spring-security-kerberos无法读取密钥表?
|
我正在尝试按照本教程的spring-security-kerberos进行操作
我有一个带有一个主体的密钥表:
ktutil: rkt http-web.keytab
ktutil: l
slot KVNO Principal
---- ---- ---------------------------------------------------------------------
1 3 HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM
此密钥表是使用以下命令在win 2k8域控制器上生成的:
ktpass /out http-web.keytab /mapuser aulfeldt-hta-nightly@WAD.ENG.HYTRUST.COM /princ HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM /pass *
它复制在spnego.xml中使用的测试Web服务器上:
<bean class=\"org.springframework.security.extensions.kerberos.SunJaasKerberosTicketValidator\">
<property name=\"servicePrincipal\" value=\"HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM\" />
<property name=\"keyTabLocation\" value=\"/WEB-INF/http-web.keytab\" />
<property name=\"debug\" value=\"true\" />
</bean>
但找不到主体:
Key for the principal HTTP/aulfeldt.hta.nightly@WAD.ENG.HYTRUST.COM not available in
jndi:/localhost/spring-security-kerberos-sample-1.0.0.CI-SNAPSHOT/WEB-INF/http-web.keytab
[Krb5LoginModule] authentication failed
Unable to obtain password from user
我尝试将Web服务器(Centos 5.5,tomcat6)加入AD WAD.ENG.HYTRUST.COM,可以使用AD凭据登录,然后使用来自/etc/krb5.keytab的主体来查看是否可以读取。 ..相同的回应。我还在名称的大写和小写形式上尝试了很多变体。
ps今天早上从git中检查了一下。
没有找到相关结果
已邀请:
2 个回复
为陡土
或
错误指定的主体名称(即 与生成密钥表文件的实际值不匹配) keytab文件路径中的空格(请注意是否曾经 固定),-在关于SPRING SECURITY KERBEROS / SPNEGO EXTENSION SpringSource博客条目的评论中看到了抱怨,并收到了关于我的开发环境的证据-Windows 7 / Java 6,-必须始终考虑绝对路径(即使classpath引用了keytab)没有空格)
舞备联