Java Kerberos登录 - 存储凭据

时间:2014-01-16 13:41:31

标签: java kerberos credentials

我已为各种身份验证目的配置了Kerberos。操作系统命令行工具正在运行并返回具有可配置生命周期的可续订票证。

我现在需要在自定义应用程序中获取票证,并将它们存储在我可以与任何Kerberos系统工具一起使用的票证缓存文件中。由于自定义应用程序是基于Java的,因此使用Java方法验证和处理故障单似乎是最自然的。

我一直在关注JAAS Authentication Tutorial中给出的示例,并成功通过了我的Kerberos KDC身份验证。现在,我想

  1. 微调获取的TGT票证的属性。我得到的是一张无限续航的不可更新机票。相反,我想申请一张具有可配置生命周期,可续订寿命等的可更新票证。
  2. 将获取的票证存储到票证缓存文件中,以便在示例应用程序外部使用(例如命令行kerberos实用程序)。
  3. 我有两个未解决的问题:

    1. 如何配置登录上下文以获取具有所需设置的票证?
    2. 如何从经过身份验证的主题中提取凭据并将其保存到故障单缓存文件中?
    3. 更新:深入研究代码,似乎sun.security.krb5.KrbAsReqBuilder用于进行Kerberos通信。虽然sun.security.krb5.KrbAsReq允许指定它们,但生命周期选项似乎在那里是硬编码的。似乎我可能需要采取另一种方式来获得我想要的东西。

      Update2:在审查了其他选项之后,我决定使用MIT Kerberos的kinit工具的原始C源代码的修改版本,而不是使用Java。

0 个答案:

没有答案