2012-12-10 33 views
0

我正在开发需要代表用户生成Kerberos票证的Java EE服务器应用程序。生成没有用户密码的AD Kerberos票据

我正在开发的应用程序将使用备用凭据(非Active Directory,如生物识别)对用户进行身份验证,然后需要以某种方式生成显示用户已通过身份验证的Kerberos票证。然后,我将使用Kerberos票证来生成一个SPNEGO令牌,并将该令牌插入到HTTP头中,这样用户就不必在来自浏览器的后续请求中重新进行身份验证。

是否有可能代表没有用户的原始AD密码的用户生成该Kerberos票证? (假设我有权访问AD服务帐户登录密码&)。如果可能的话,我会怎么做呢?什么样的配置,权限是必要的?

回答

2

是的,这是可能的。微软已经为此扩展了Kerberos。这称为用户服务(S4U)。你的情况被称为S4U2Self(协议转换)。这将在Java 8中可用。您可以检查ticket并将该代码添加到Java认可的类路径中。您可以在MIT Kerberos wiki中阅读更多内容。

+0

非常感谢。正是我在找什么! –

+0

很高兴我能够帮助你。如果你得到这个工作,请分享你的经验。你也许会喋喋不休地答复我的答案。 –

+0

请注意,您需要以某种方式从客户端获得UPN。 –