windows 机器上的 Kerberos 缓存票证在用户解锁后未重新生成

Kerberos cached ticket on windows machine not regenerated after user unlock

我有一个 java 服务器和客户端应用程序。这些应用程序在 windows 台机器上运行。客户端使用 kerberos 身份验证登录服务器。它是使用jgssapi实现的。

首先,客户端从系统中检索存储的缓存 tgt 票证,以从 kdc 生成令牌。 问题是 - 在 windows 中锁定用户会话(锁定屏幕或更改用户)后,系统中没有缓存的 tgt 票证(由 C:\Windows\System32\klist.exe 检查)。 据我了解,我可以通过在计算机上的用户登录 off/log 来获取它们。

这个问题发生在我的客户机器上。锁定后,缓存票证列表为空。

它没有在我的办公室复制(客户端 windows 7,win server 2008 上的活动目录服务器)。锁定后,我总是在机器上有 NEW REGENERATED 缓存的 tgt 票证(不是在锁定之前从工作中获得,而是在解锁后再次生成)。没有为此行为设置特殊的 GPO(关于使用来自先前用户会话的缓存票证的问题 )。

所以我不明白为什么系统在解锁后不重新生成缓存的tgt?怎么做?

我在这里找到了类似的问题https://social.technet.microsoft.com/Forums/ie/en-US/be5ebc3b-d915-4acb-a9ae-67c61ee03b97/service-tickets-kerberos-purged-on-ctrlaltdel?forum=winserverDS&prof=required 答案之一是 "First of all have a look at what you have with klist and then lock and unlock your screen. If you have a connectino to the DC you will get a service ticket to your local host and the KDC and the TGT , if you dont have a connection you will have nothing."

AD连接成功。我可以ping通它。我可以使用 AD-explorer 获取连接信息。还是DC的连接方式不一样?

谢谢。

JGSS 和 SSPI 不能一起玩。您要么仅使用 JGSS,然后开始通过 JNA 使用 SSPI。