我正在使用 Jconsole 使用 Jaas 构建一个 Kerberos 登录模块。
Jconsole 将是用于访问具有暴露 MBean 的进程的客户端,kerberos 登录模块将对用户进行身份验证。
用户将通过 Jconsole 登录,Jconsole 会将用户数据传递给登录模块,然后由 Kerberos 登录模块处理用户名和密码,并根据中央活动目录验证用户凭据。
我在为 Kerberos 配置此配置时遇到问题。即。这需要设置 SPN 吗?还是只需要设置一个 KeyTab?
我正在使用 Jconsole 使用 Jaas 构建一个 Kerberos 登录模块。
Jconsole 将是用于访问具有暴露 MBean 的进程的客户端,kerberos 登录模块将对用户进行身份验证。
用户将通过 Jconsole 登录,Jconsole 会将用户数据传递给登录模块,然后由 Kerberos 登录模块处理用户名和密码,并根据中央活动目录验证用户凭据。
我在为 Kerberos 配置此配置时遇到问题。即。这需要设置 SPN 吗?还是只需要设置一个 KeyTab?
如果您在控制台上向用户询问用户名和密码,那么您既不需要 keytab 也不需要 SPN。您只需要一个 JAAS 插件,它会要求输入密码。Kerberos 会话将由 JAAS 登录模块启动,您的应用程序中将包含 TGT。
另一方面,如果您计划接受来自用户的现有 kerberos 会话(他们当前的 Windows 域会话),那么您确实需要在活动目录中拥有 SPN,并且您的应用程序不会提示用户输入密码。
keytab 只是存储在 kerberos 数据库中的密钥的副本,您始终需要 SPN 来生成 keytab。但反过来不是这样,您可以通过提供 SPN 密码从 Active Directory 获取会话密钥。