2009-05-23 13 views
0

En utilisant l'authentification de base, si l'utilisateur est déjà connecté, le navigateur inclura le nom d'utilisateur/mot de passe dans la requête http dans les requêtes HTTP SUIVANTES UNIQUEMENT SI il reçoit une réponse 401 contenant un défi d'authentification. Le nom d'utilisateur/mot de passe est transmis via l'en-tête Autorisation.Existe-t-il un moyen de forcer le navigateur à toujours passer l'en-tête Autorisation si les informations d'identification sont déjà disponibles?

Existe-t-il un moyen de forcer le navigateur à toujours inclure l'en-tête d'autorisation une fois que l'utilisateur s'est connecté? La raison pour laquelle je demande ceci est que j'ai une application CGI (distincte de l'application CGI principale qui sert mes pages dynamiques) qui devrait utiliser l'information d'autorisation si elle est présente mais ne devrait pas l'inviter si elle n'est pas présente .

Merci.

Répondre

0

si l'utilisateur a déjà ouvert une session, le navigateur comprendra le nom d'utilisateur/mot de passe dans la requête http dans les futures requêtes http SEULEMENT si elle reçoit une réponse 401 contenant un défi d'authentification

Ce n'est pas le comportement que je vois dans les navigateurs Web; Une fois que le navigateur a reçu un 401, il inclut toujours l'autorisation après cela. Pouvez-vous fournir plus de détails sur la façon de reproduire le problème?

+0

C'est en fait ce que je demandais. Le navigateur doit d'abord recevoir une réponse 401 avant de fournir l'en-tête d'autorisation. Je demande un moyen d'inclure l'en-tête d'autorisation même si le navigateur n'a pas reçu de réponse 401. –

+2

Je vois. C'est un peu un problème délicat. Pouvez-vous nous dire quel problème serait résolu en faisant cela et peut-être que nous pourrions l'attaquer d'une autre direction? –

+0

Il suffit d'inclure la page ci-dessus dans notre application web sans que le navigateur demande à l'utilisateur un nom d'utilisateur/mot de passe –

0

Une solution serait d'exposer un gestionnaire de votre application CGI, ce qui générerait une page HTML qui ferait un appel AJAX, en invitant le 401 qui serait alors répondu par le navigateur. Cela aurait-il un sens?

+0

en fait je n'ai pas besoin de l'utilisateur final pour voir le message pupup (ou même toute authentification) comme ce mot de passe est pour notre entreprise, pas pour les utilisateurs finaux –

Questions connexes