Pourquoi est-ce que IE ne pas envoyer le ticket Kerberos informations à mon JBoss sur Linux?
Je suis en train de mettre en œuvre l'authentification unique à l'aide d'un client Windows et JBoss. Mon PC de développement, JBoss s'exécute sur Windows 7, sur le serveur de développement, il s'exécute sur (Red Hat) de Linux.
Il y a un JBoss Trousse À Outils De La Négociation qui me permet de vérifier si le Negiation en-tête est d'arriver correctement.
La BasicNegotiation
test fonctionne bien aussi longtemps que j'ai JBoss en cours d'exécution sur mon propre PC, à l'aide de localhost
. L'envoyé d'en-tête est
Authorization: Negotiate YHgGBisGAQUFAqBuMGygMDAuBgorBgEEAYI3AgIKB...
(plus quelques plus d'octets)
Le test de la réponse est
Trousse À Outils De La Négociation
De Base De Négociation
WWW-Authenticate - Négocier YHgGBisGAQUFAqBuMGygMDAuBgorBgEEayi3agik...NegTokenInit
Message Oid - SPNEGO
Mech Types - {NTLM} {Kerberos V5 Héritage} {Kerberos V5} {1.3.6.1.4.1.311.2.2.30}
Req Des Drapeaux
Mech Jeton -TlRMTVNTUAABAAAAl7II4gQABAAyAAAAcgakacgaaaagabadaaaad0lqsuvwmtawmjvjuelf
Mech Liste Des Micro -
Mais sur le serveur Linux, le même test ne fonctionne pas. La base de la raison (je suppose), c'est que l'en-tête est différent:
Authorization: Negotiate TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAbAdAAAADw==
Et puis JBoss Négociation Toolkit fait un repli à NTML d'Authentification, que je ne veux pas et qui apparaît comme l'erreur dans la webapp de sortie.
Trousse À Outils De La Négociation
Négociation NTLM
WWW-Authenticate - Négocier TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAaaaaaaaaaaagabadaaaadw==NTLM - Negotiate_Message
Attention, ceci est NTLM, seulement SPNEGO est pris en charge!
Négocier des Drapeaux (encryption56Bit)(explicitKeyExchange)(sessionKeyExchange128Bit)
negotiateVersion)(ntlm2)(alwaysSign)(ntlm)(lmKey)(signer)(requestTarget)(oem)(unicode)
Nom de domaine = null {longueur=0}{maxLength=0}{offset=0}
Nom du poste de travail = null {longueur=0}{maxLength=0}{offset=0}
La Version ?
Je l'ai configuré à la fois Internet Explorer et Firefox pour envoyer la Négociation d'en-tête, et ils ont tous deux échouent avec le serveur Linux.
Ce que je fais mal?
Par la route: j'ai lu quelque part que Windows envoie toujours la Négociation Kerberos en-tête sur des machines locales - est-ce vrai?
OriginalL'auteur eerriicc | 2013-06-27
Vous devez vous connecter pour publier un commentaire.
Mon Internet Explorer utilisée pour envoyer un NTLM-Tête au lieu de kerberos. Raison: Windows avait un mot de passe enregistré pour le même hôte dans son coffre.
L'utilisateur et le mot de passe entré dans le coffre-fort n'était pas la même que celle de mon compte Windows, mais il fait pas de différence. Uniquement le nom du serveur (même pas en plein qualifiés).
Réservoirs à http://www.msxfaq.de/verschiedenes/kerberosbrowser.htm pour l'explication (en allemand).
OriginalL'auteur Olivier Faucheux
Merci pour les réponses. Dans notre cas, le problème est que nous avons deux domaines Windows. J'ai essayé d'accéder au serveur Linux dans le domaine, Une avec l'explorateur Windows dans le domaine B. Évidemment, cela ne fonctionne pas...
OriginalL'auteur eerriicc
Le navigateur envoie une NTLM de type 1 jeton parce que Kerberos a échoué parce que votre AD/DNS configuration est incorrecte. Ce comportement est correct. Fixer votre configuration DNS.
OriginalL'auteur Michael-O
Voici un bon résumé de ce qui peut aller mal: https://www.pingidentity.com/support/answers/index.cfm/why-am-i-not-getting-a-kerberos-ticket?id=90640000000CaWgAAK
Je fais toujours une capture wireshark pour voir la communication entre le navigateur et le service, et aussi entre le navigateur et l'ANNONCE. Dans votre cas, le problème pourrait être avec ce dernier. Par exemple, une fois j'ai utilisé
http://myGoodLookingDNSAlias
adresse pour un service, qui a été résolu àhttp://realBadLookingServerName
, mais j'ai oublié d'enregistrer celles-ci. Ainsi, le navigateur a unKRB5KDC_ERR_S_PRINCIPAL_UNKNOWN
erreur de l'ANNONCE, et ne pas envoyer le billet.Ce qui concerne,
András
OriginalL'auteur user2538123