Cyrus SASL和Kerberos TGT

时间:2019-03-26 14:36:52

标签: kerberos sasl kerberos-delegation cyrus

使用Kerberos,成功使用kinit进行身份验证会导致本地缓存的TGT,该TGT将用于对使用Kerberos的服务进行身份验证。通常,此TGT有效期为一天,因此用户每天仅需一次提供其凭据即可与Kerberos服务进行所有交互。

说我编写了一个使用Cyrus SASL实现来使用Kerberos机制对用户进行身份验证的客户端/服务器应用程序。在这种情况下,TGT缓存如何工作?换句话说,客户端cyrus库是否自动跟踪TGT,以便将来与服务器的交互不需要用户凭据?如果是这样,是否有办法指定Cyrus从KDC获得的TGT是可转发的,以便客户端可以与其他使用Kerberized的服务进行交互?

感谢任何提示!

1 个答案:

答案 0 :(得分:2)

据我所知,Cyrus SASL库没有为用户获取TGT –它甚至不知道主体或密码;相反,它希望TGT已存在于系统的凭据缓存中。

答案是使用kinit --forwardable,因为无论如何都必须使用kinit。