我在 Java 中使用 GSSAPI 以便使用 Kerberos 身份验证登录到 LDAP 服务器。我是 Kerberos 的新手,所以如果这是一个明显的问题,我很抱歉,但我在互联网上找不到足够清晰的内容。
我执行以下步骤:
- 通过设置系统属性定义登录配置
"java.security.auth.login.config"
到配置文件路径。
- Call
LoginContext.login()
带有配置名称和自定义回调处理程序
- 如果登录成功,“假装是”主题(通过使用
Subject.doAs()
),并通过创建新的连接到 LDAP 服务器InitialLDAPContext
具有适当的环境变量。
现在,我的问题是我不明白哪个步骤与哪个 kerberos 操作相关?
登录操作后我只有 TGT,这样说是否正确?我什么时候可以获得服务特定票证?
谢谢,
迪克拉
com.sun.security.auth.module.Krb5LoginModule 类是 Sun 对 Kerberos 版本 5 协议的登录模块的实现。身份验证成功后,票证授予票证 (TGT) 将存储在主体的私有凭证集中,并且 Kerberos 主体将存储在主体的主体集中。
(取自here http://java.sun.com/javase/6/docs/technotes/guides/security/jgss/single-signon.html)
这意味着LoginContext.login
确实等于kinit
在每一个之后,我们都有一个 TGT。
稍后将根据中执行的操作获取并使用服务票证Subject.doAs()
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)