Kerberos是一种网络认证协议,其设计目标是通过密钥系统为客户机、服务器应用程序提供强大的认证服务。该认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全,并假定网络上传送的数据包可以被任意的读取、修改和插入数据。在以上情况下,Kerberos作为一种可信任的第三方认证服务,是通过传统的密码技术执行的认证服务的。
协议的安全主要依赖于参加者对时间的松散同步和短周期的Kerberos票据的认证声明。下面是这个协议的一个流程图,它主要包括以下几个模块:
AS:认证服务器
KDC:密钥分发中心
TGT:票据授权票据
SGT:服务许可票据
TGS:票据授权服务器
SS:特定服务器提供端
流程说明如下:
1.客户端发送客户端名和TGS申请到AS服务器
2.AS在数据库中检查是客户是否存在