2

我正在开发一个需要代表用户生成 Kerberos 票证的 Java EE 服务器应用程序。

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

是否可以在没有用户原始 AD 密码的情况下代表用户生成 Kerberos 票证?(假设我可以访问 AD 服务帐户登录名和密码)。如果有可能,我将如何去做?需要什么样的配置、权限?

4

1 回答 1

4

是的,这是可能的。Microsoft 为此扩展了 Kerberos。这称为用户服务 (S4U)。您的案例称为S4U2Self(协议转换)。这将在 Java 8 中可用。您可以检查票证并将该代码添加到 Java 认可的类路径中。您可以在MIT Kerberos wiki中阅读更多内容。

于 2012-12-11T11:03:17.303 回答