Я пытаюсь сделать весеннюю безопасность Kerberos с учетными данными Active Directory, как указано в http://docs.spring.io/spring-security-k ... n-uth-auth. Я хотел бы сказать, что у меня есть большинство вещей (SPN, KeyTabs и т. Д.). Теперь у меня есть сбоя контрольной суммы. Предположим, что я меняю свое главное имя, я получаю ошибку шифрования AES.
Я использую Spring Boot на RHEL 6 с Oracle Java 1.8 + JCE
Sample от https://github.com/spring-projects/spri ... thty-authr Этот I get when run the jar
Debug is true
storeKey true
useTicketCache false
useKeyTab true
doNotPrompt true
ticketCache is null
isInitiator false
KeyTab is /home/boss/webdev125-3.keytab
refreshKrb5Config is false
principal is http/webdev@EXAMPLE.ORG
tryFirstPass is false
useFirstPass is false
storePass is false
clearPass is false
principal is http/webdev@example.org
будет использовать keytab
commit uceced < /p>
< /blockquote>
......../p>
2015-11-25 11: 29: 09.631 559- [NIO-8080-EXEC-3] .A.KERBERSERSVICEAUTHENTICANCEPROVIDER: Попробуйте проверить токен Kerberos
2015-11-25 11: 29: 10.003 Warn 5559 --- [NIO-8080-EXEC-3] W.A.SpneGoAuthenticationProcessingfilter: Переговоры. /> < /blockquote>
...образное org.springframework.security.kerberos.authentication.sun.sunjaaskerberosticketvalidator.validateTicket (sunjaaskerberosticketvalidator.java:71)
at org.springframework.security.kerberos.authentication.kerberosserviceauthenticationprovider.authenticate (kerberosserviceauthenticationprovider.java:64)
at org.springframework.security.authentication.providermanager. />
...
Caused by: org.ietf.jgss.GSSException: Failure unspecified at GSS-API level (Mechanism level: Checksum failed)
at sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:856)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:342)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:285)
at sun.security.jgss.spnego.SpNegoContext.GSS_acceptSecContext(SpNegoContext.java:906)
at sun.security.jgss.spnego.SpNegoContext.acceptSecContext(SpNegoContext.java:556)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:342)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:285)
at org.springframework.security.kerberos.authentication.sun.SunJaasKerberosTicketValidator$KerberosValidateAction.run(SunJaasKerberosTicketValidator.java:170)
at org.springframework.security.kerberos.authentication.sun.SunJaasKerberosTicketValidator$KerberosValidateAction.run(SunJaasKerberosTicketValidator.java:153)
... 48 common frames omitted
< /code>
вызван: sun.security.krb5.krbcryptoexception: проверка проверки < /p>
< /blockquote>
at sun.security.krb5.internal.crypto.Aes256CtsHmacSha1EType.decrypt(Aes256CtsHmacSha1EType.java:102)
at sun.security.krb5.internal.crypto.Aes256CtsHmacSha1EType.decrypt(Aes256CtsHmacSha1EType.java:94)
at sun.security.krb5.EncryptedData.decrypt(EncryptedData.java:175)
at sun.security.krb5.KrbApReq.authenticate(KrbApReq.java:281)
at sun.security.krb5.KrbApReq.(KrbApReq.java:149)
at sun.security.jgss.krb5.InitSecContextToken.(InitSecContextToken.java:108)
at sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:829)
... 56 common frames omitted
< /code>
вызван: java.security.generalsecurityexception: проверка не удалась < /p>
< /blockquote>
at sun.security.krb5.internal.crypto.dk.AesDkCrypto.decryptCTS(AesDkCrypto.java:451)
at sun.security.krb5.internal.crypto.dk.AesDkCrypto.decrypt(AesDkCrypto.java:272)
at sun.security.krb5.internal.crypto.Aes256.decrypt(Aes256.java:76)
at sun.security.krb5.internal.crypto.Aes256CtsHmacSha1EType.decrypt(Aes256CtsHmacSha1EType.java:100)
... 62 common frames omitted
< /code>
Некоторые другие данные: < /p>
/etc/krb5.conf действительно имеет default_tgs_enctypes, default_tkt_enctypes, чтобы включить aes256-cts-hmac-sha1-96. /> Расположение Keytab по умолчанию соответствует приложению и KRB5.conf < /li>
Клюки генерируются на сервере Windows, а затем копируются в Rhel < /li>
< /ul>
Подробнее здесь: https://stackoverflow.com/questions/339 ... cksum-fail