首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spring-security-kerberos不能读取密钥表?

spring-security-kerberos不能读取密钥表?
EN

Stack Overflow用户
提问于 2011-05-27 03:39:51
回答 2查看 10.3K关注 0票数 3

我正在尝试跟随this tutorial for spring-security-kerberos,我有一个密钥表,里面有一个主体:

代码语言:javascript
复制
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服务器上复制的:

代码语言:javascript
复制
<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>

但是找不到本金:

代码语言:javascript
复制
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服务器(CentOS5.5,tomcat6)加入到AD WAD.ENG.HYTRUST.COM,可以使用AD凭据登录,然后使用/etc/krb5.keytab中的主体进行登录,看看是否可以读取...同样的反应。我还尝试了许多大写和小写名称的变体。

ps今早从git上查看了它。

EN

回答 2

Stack Overflow用户

发布于 2012-09-05 00:36:44

有几个错误导致“无法从用户处获取密码”:

  1. 错误地指定了密钥表文件的位置(就像@jasop指出的那样);它应该类似于classpath:http-web.keytabfile:c:/http-web.keytabl
  2. incorrectly指定的主体名称(即,与实际名称不匹配的主体名称,其密钥表文件是密钥表文件路径中的generated)
  3. white空格(请注意,请确保这是否已修复),在SPRING SECURITY KERBEROS/SPNEGO EXTENSION SpringSource博客条目的评论中看到投诉,并在我的开发环境(Windows7/Java6)上收到证据-必须始终考虑绝对路径(即使类路径引用的密钥表没有空格)
票数 5
EN

Stack Overflow用户

发布于 2012-03-06 14:40:52

我也有同样的问题。

问题出在你的"keyTabLocation“设置上。不能将其设置为/WEB-INF/http-web.keytab

您需要将其设置为文件路径或类路径上的某个值。

例如,我将我的文件放在类路径上,并进行了以下设置:

代码语言:javascript
复制
    <property name="keyTabLocation" value="classpath:http-web.keytab" />
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6144097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档