票证授予服务交换
为客户端建立票证授予票证 (TGT) 和 会话密钥 后,客户端可以请求该服务的单独会话密钥和票证。
请求其他服务的票证
- 用户工作站上的 Kerberos 客户端通过向密钥分发中心 (KDC) 发送KRB_TGS_REQ (Kerberos Ticket-Granting服务请求) 类型的消息来请求服务凭据。 此消息包括客户端请求凭据的服务的标识、使用用户的新登录 会话密钥加密的验证器消息,以及从 身份验证服务 Exchange 获取的 TGT。
- 当 KDC 收到KRB_TGS_REQ时,KDC 会使用其密钥解密 TGT,并提取用户的登录会话密钥。
- KDC 使用登录 会话密钥 来解密用户的验证器消息并对其进行评估。 如果验证器通过测试,KDC 将从 TGT 中提取用户的授权数据,并发明一个会话密钥供用户与请求的服务器共享。
- KDC 使用用户的登录会话密钥加密服务会话密钥的一个副本。
- KDC 在票证中嵌入服务会话密钥的另一个副本以及用户的授权数据,并使用服务器 的主密钥对票证进行加密。
- KDC 通过使用 Kerberos Ticket-Granting Service Reply KRB_TGS_REP () 类型的消息进行答复,将这些凭据发送回客户端。
- 当客户端收到回复时,它会使用用户的登录会话密钥解密服务会话密钥,并将服务会话密钥存储在其票证缓存中。
- 客户端将票证提取到服务器,并将其存储在其票证缓存中。