SPNEGO在docker容器内不工作的Kerberos

SPNEGO在docker容器内不工作的Kerberos,docker,kerberos,spnego,Docker,Kerberos,Spnego,我正在尝试使用kerberos实现SSO。我成功地在主机上完成了这项工作 一旦我在docker容器中复制了相同的文件,它就停止工作了 我得到的错误如下所示 Key for the principal HTTP/HOSTNAME@DOMAIN not available in default key tab org.springframework.ldap.AuthenticationException: Unable to obtain password from user ; nested

我正在尝试使用kerberos实现SSO。我成功地在主机上完成了这项工作

一旦我在docker容器中复制了相同的文件,它就停止工作了

我得到的错误如下所示

Key for the principal HTTP/HOSTNAME@DOMAIN not available in default key tab

org.springframework.ldap.AuthenticationException: Unable to obtain password from user
; nested exception is javax.naming.AuthenticationException: Unable to obtain password from user
 [Root exception is javax.security.auth.login.LoginException: Unable to obtain password from user
]
        at org.springframework.ldap.support.LdapUtils.convertLdapException(LdapUtils.java:191)
        at org.springframework.ldap.core.support.AbstractContextSource.createContext(AbstractContextSource.java:355)
        at org.springframework.ldap.core.support.AbstractContextSource.doGetContext(AbstractContextSource.java:139)
        at org.springframework.ldap.core.support.AbstractContextSource.getReadOnlyContext(AbstractContextSource.java:158)
        at org.springframework.ldap.core.LdapTemplate.executeReadOnly(LdapTemplate.java:802)
        at org.springframework.security.ldap.SpringSecurityLdapTemplate.searchForSingleEntry(SpringSecurityLdapTemplate.java:316)
        at org.springframework.security.ldap.search.FilterBasedLdapUserSearch.searchForUser(FilterBasedLdapUserSearch.java:127)
        at org.springframework.security.ldap.userdetails.LdapUserDetailsService.loadUserByUsername(LdapUserDetailsService.java:56)
        at org.springframework.security.kerberos.authentication.KerberosServiceAuthenticationProvider.authenticate(KerberosServiceAut

你到底试过什么?您的代码在哪里?我已经创建了一个web应用程序,如果用户拥有有效的kerberos票证,则用户应该能够访问此门户。我能够做到这一点。该服务能够截获具有有效kerberos票证的用户请求,并允许用户访问门户。但是,当我在docker容器中部署相同的应用程序时,它抛出了我上面所说的错误。得到了修复。问题是容器中有一个文件/etc/krb5.keytab正在被拾取。一旦我明确设置了keytab文件的路径,它就开始工作了。