Перечитал уже кучу форумов, документации и статей, в том числе и по Вашей ссылке. Никакого результата не добился. Выяснил так же, что если в IE включить опцию "Разрешить встроенную проверку подлинности Windows", то выскакивает ошибка, если запускать на локалхосте: Код | javax.servlet.ServletException: GSSException: Defective token detected (Mechanism level: GSSHeader did not find the right tag) net.sourceforge.spnego.SpnegoHttpFilter.doFilter(SpnegoHttpFilter.java:233)
root cause
GSSException: Defective token detected (Mechanism level: GSSHeader did not find the right tag) sun.security.jgss.GSSHeader.<init>(Unknown Source) sun.security.jgss.GSSContextImpl.acceptSecContext(Unknown Source) sun.security.jgss.GSSContextImpl.acceptSecContext(Unknown Source) sun.security.jgss.spnego.SpNegoContext.GSS_acceptSecContext(Unknown Source) sun.security.jgss.spnego.SpNegoContext.acceptSecContext(Unknown Source) sun.security.jgss.GSSContextImpl.acceptSecContext(Unknown Source) sun.security.jgss.GSSContextImpl.acceptSecContext(Unknown Source) net.sourceforge.spnego.SpnegoAuthenticator.doSpnegoAuth(SpnegoAuthenticator.java:444) net.sourceforge.spnego.SpnegoAuthenticator.authenticate(SpnegoAuthenticator.java:283) net.sourceforge.spnego.SpnegoHttpFilter.doFilter(SpnegoHttpFilter.java:229)
|
Если на другом компьютере в домене: Код | exception
javax.servlet.ServletException: GSSException: Failure unspecified at GSS-API level (Mechanism level: Checksum failed) net.sourceforge.spnego.SpnegoHttpFilter.doFilter(SpnegoHttpFilter.java:233)
root cause
GSSException: Failure unspecified at GSS-API level (Mechanism level: Checksum failed) sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:741) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267) sun.security.jgss.spnego.SpNegoContext.GSS_acceptSecContext(SpNegoContext.java:858) sun.security.jgss.spnego.SpNegoContext.acceptSecContext(SpNegoContext.java:532) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267) net.sourceforge.spnego.SpnegoAuthenticator.doSpnegoAuth(SpnegoAuthenticator.java:444) net.sourceforge.spnego.SpnegoAuthenticator.authenticate(SpnegoAuthenticator.java:283) net.sourceforge.spnego.SpnegoHttpFilter.doFilter(SpnegoHttpFilter.java:229)
root cause
KrbException: Checksum failed sun.security.krb5.internal.crypto.ArcFourHmacEType.decrypt(ArcFourHmacEType.java:85) sun.security.krb5.internal.crypto.ArcFourHmacEType.decrypt(ArcFourHmacEType.java:77) sun.security.krb5.EncryptedData.decrypt(EncryptedData.java:168) sun.security.krb5.KrbApReq.authenticate(KrbApReq.java:268) sun.security.krb5.KrbApReq.<init>(KrbApReq.java:134) sun.security.jgss.krb5.InitSecContextToken.<init>(InitSecContextToken.java:79) sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:724) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267) sun.security.jgss.spnego.SpNegoContext.GSS_acceptSecContext(SpNegoContext.java:858) sun.security.jgss.spnego.SpNegoContext.acceptSecContext(SpNegoContext.java:532) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267) net.sourceforge.spnego.SpnegoAuthenticator.doSpnegoAuth(SpnegoAuthenticator.java:444) net.sourceforge.spnego.SpnegoAuthenticator.authenticate(SpnegoAuthenticator.java:283) net.sourceforge.spnego.SpnegoHttpFilter.doFilter(SpnegoHttpFilter.java:229)
root cause
java.security.GeneralSecurityException: Checksum failed sun.security.krb5.internal.crypto.dk.ArcFourCrypto.decrypt(ArcFourCrypto.java:388) sun.security.krb5.internal.crypto.ArcFourHmac.decrypt(ArcFourHmac.java:74) sun.security.krb5.internal.crypto.ArcFourHmacEType.decrypt(ArcFourHmacEType.java:83) sun.security.krb5.internal.crypto.ArcFourHmacEType.decrypt(ArcFourHmacEType.java:77) sun.security.krb5.EncryptedData.decrypt(EncryptedData.java:168) sun.security.krb5.KrbApReq.authenticate(KrbApReq.java:268) sun.security.krb5.KrbApReq.<init>(KrbApReq.java:134) sun.security.jgss.krb5.InitSecContextToken.<init>(InitSecContextToken.java:79) sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:724) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267) sun.security.jgss.spnego.SpNegoContext.GSS_acceptSecContext(SpNegoContext.java:858) sun.security.jgss.spnego.SpNegoContext.acceptSecContext(SpNegoContext.java:532) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323) sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267) net.sourceforge.spnego.SpnegoAuthenticator.doSpnegoAuth(SpnegoAuthenticator.java:444) net.sourceforge.spnego.SpnegoAuthenticator.authenticate(SpnegoAuthenticator.java:283) net.sourceforge.spnego.SpnegoHttpFilter.doFilter(SpnegoHttpFilter.java:229)
|
Начал смотреть в http-снифере. При включенной опции IE "Разрешить встроенную проверку подлинности Windows", происходит negotiate аутентификация (без запроса логина и пароля), при отключенной - basic аутентификация (с запросом логина и пароля). И во время negotiate аутентификации выскакивают эти ошибки
|