Kerberos
Kerberos是一种通过传统的加密技术(共享密钥)实现的可信任的第三方认证机制。
kerberos协议中包含3种角色:
- 客户端(client):发送请求的一方
- 服务端(Server):接收请求的一方
- 密钥分发中心(Key Distribution Center,KDC):密钥分发中心包括AS(Authentication Server)认证服务器和TGS(Ticket Granting Ticket)票据授予服务器
整个kerberos认证流程可以简化描述如下:
客户端在访问每个想要访问的网络服务时,他需要携带一个专门用于访问该服务并且能够证明自己身份的票据,当服务端收到了该票据他才能认定客户端身份正确,向客户端提供服务。所以整个认证流程可简化为两大步:
- 客户端向KDC请求获取想要访问的目标服务的服务授予票据(Ticket)(先在AS做可信身份认证,再在TGS申请票据);
- 客户端拿着从KDC获取的服务授予票据(Ticket)访问相应的网络服务