Une partie de notre site Web est protégée par la protection par mot de passe de style .htaccess. Lorsque vous essayez d'accéder à cette zone du site Web, le navigateur Web affiche une boîte de dialogue demandant votre nom d'utilisateur et votre mot de passe. P>
Je dois y accéder à ce problème (par exemple avec un appel Ajax). Comment le serveur me dit-il qu'il a besoin d'un mot de passe et de la fourniture? P>
4 Réponses :
Authentification HTTP de base: P>
http://coderseye.com/ 2007 / HOW-DO-DO-DO-HTTP-BASIC-ATH-IN-AJAX.HTML P>
Pourrait être une authentification digérée, également. La technique de base est la même, mais les détails de la réponse semblent différent.
en général, http: // utilisateur: PASS@Example.com P>
Mais il y a des lacunes de sécurité évidentes avec cela. P>
Une solution plus complète peut être de définir une variable de session après l'authentification d'un utilisateur. P>
rendre le message AJAX à un script qui vérifie l'authentification. Si vous authentifiez, utilisez Curl pour récupérer les résultats à l'aide d'un compte autorisé prédéfini. P>
Ceci vous permet de réutiliser Apache Basic Auth, mais empêche les mots de passe d'être écrits dans le DOM. P>
Le site en question est HTTPS que je suppose réduira les problèmes de sécurité. L'URL est-elle transmise au serveur crypté dans une session HTTPS - je suppose que c'est ...?
Mieux vaut toujours https: // utilisateur: PASS@Example.com
L'URL devrait être sécurisée, mais vous écrivez toujours l'utilisateur / passer à droite dans un site ordinaire dans le cadre d'une HREF. Même si l'U / P ne peut pas être snipé en transit, il y a encore des problèmes là-bas.
L'URL est cryptée, seul le nom d'hôte et le numéro de port est transféré en texte brut ( réponses.google.com/answers/threadView/id/758002.html ). Gardez également à l'esprit que la syntaxe n'est pas prise en charge dans IE6 ( support.microsoft.com/kb/834489 < / a>), mais qu'attendez-vous?
Ceci est bien sûr non pas AJAX, mais avec wget strong> client, vous pouvez utiliser --HTTP-User et --HTTP-Mot de passe Flags P>
jQuery prend en charge l'authentification HTTP avec leur méthode AJAX (). Quelque chose comme ça devrait fonctionner: documentation sur toutes les options JQuery.ajax () est disponible ici: http://docs.jquerery.com/ajax/jquery.ajax#OPTIONS P> p>