2010-10-29 18 views
0

J'ai un problème avec l'authentification:authentification de formulaire IE7 après l'authentification NTLM a échoué

  • Les utilisateurs qui ont des informations d'identification de domaine valides sont logined en utilisant l'authentification NTLM (i envoyer « WWW-Authenticate: NTLM » en-tête et 401 état dans mon jsp filtre Puis IE authentifier l'utilisateur en utilisant NTLM et tout va bien
  • J'ai d'autres utilisateurs (connectés au LAN avec leurs propres ordinateurs) et ils ne peuvent pas se connecter en utilisant NTLM J'ai créé un formulaire où ils peuvent entrer leurs informations d'identification et connectez-vous.

    Je veux créer mixed-au thentication. J'ajoute du code puis redirige l'utilisateur vers la page de connexion lorsque son authentification NTLM échoue. Mais lorsque l'utilisateur saisit des informations d'identification dans le formulaire redirigé après la vérification NTLM-auth, les données de publication du formulaire n'envoient pas à la page jsp. Au lieu de publier des données, je vois l'en-tête "Autorisation NTLM bla-bla-bla".

    Des propositions comment je peux créer l'authentification mixte?

Répondre

1

J'ai mon propre filtre d'authentification, de sorte que ma config ne sont pas similaires config ci-dessus. Je résous déjà mon problème: je crée un lien spécial, qui ne crée pas ntlm-comme-garbage dans les en-têtes et fournissez le login après que l'utilisateur ait entré des qualifications. J'ai donc 2 points d'entrée dans ma demande. Pas parfait mais ça marche.

0

Si vous n'avez pas résolu votre problème, pouvez-vous fournir votre fichier web.xml?

Les contraintes de sécurité devraient ressembler à ceci:

<security-constraint> 
    <display-name>Application Security Constraint</display-name> 
    <web-resource-collection> 
     <web-resource-name>Protected Area</web-resource-name> 
     <url-pattern>/*</url-pattern> 
     <http-method>DELETE</http-method> 
     <http-method>GET</http-method> 
     <http-method>POST</http-method> 
     <http-method>PUT</http-method> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>Everyone</role-name> 
    </auth-constraint> 
    </security-constraint> 

    <security-constraint> 
    <display-name>Login Page</display-name> 
    <web-resource-collection> 
     <web-resource-name>Unprotected Login Page</web-resource-name> 
     <url-pattern>/login.jsp</url-pattern> 
    </web-resource-collection> 
    </security-constraint> 

    <security-role> 
    <role-name>Everyone</role-name> 
    </security-role> 
+0

J'ai mon propre filtre d'authentification, donc ma configuration n'est pas similaire à la configuration ci-dessus. Je résous déjà mon problème: je crée un lien spécial, qui ne crée pas ntlm-like-garbage dans les en-têtes et fournit une connexion après que l'utilisateur ait entré les informations d'identification. J'ai donc 2 points d'entrée dans ma demande. Pas parfait mais ça marche. –