论文摘要
单点登录(SSO)是指在多个应用系统中,用户只需要一次登录认证就可以访问所有被授权的应用资源。近年来,随着计算机信息系统的不断发展,很多单位或企业的应用系统越来越多,用户为了访问多个不同的应用系统,需要多次输入相应的用户名和口令进行登录验证,使用很不方便,而且频繁的输入还会给用户和系统带来安全隐患。单点登录就是为解决这个问题而提出的。目前国内外对单点登录都有一定的研究,单点登录系统虽然出现的时间不长,但在市场上已经有了丰富的产品,如吉大正元的JITSSO系统、IBM的WebSphere、Microsoft的.NetPassport等。然而很多产品只是帮助用户完成了身份认证,而对资源的访问控制则主要还是由各应用系统自己管理,有的甚至没有控制。这些系统只是解决了用户在访问多应用系统时要输入多个用户名和口令的麻烦,并没有给安全域中的用户提供统一的安全平台。本文采用系统分析法,从分析单点登录的背景和意义出发,说明单点登录的原理,论述国内外的发展现状,然后对其相关技术进行了研究。在此基础上针对目前单点登录系统的局限性,文章提出了一个基于PKI/PMI数字证书的单点登录系统模型。该模型使用PKI系统的公钥证书进行身份认证,使用PMI系统的属性证书支持基于角色的访问控制(RBAC),完成对资源的授权管理,充分体现了单点登录与PKI/PMI的一体化设计。系统的设计工作包括总体设计和主要功能模块设计,主要有以下几方面:(1)设计了基于PKI/PMI数字证书的单点登录模型,通信过程采用SSL思想,并使用Diffie_Hellman密钥交换协议来产生会话密钥;(2)为了方便用户和管理,设计数字证书网上受理体系结构,数字证书统一存储在LDAP证书库中,用户持有的公钥证书由UsbKey存储;(3)身份认证采用双因子认证和数字证书双向认证相结合的方式,既保证了用户身份的真实性,又能防止服务器的假冒和欺骗;然后结合Kerberos票据机制,采用Cookie技术,设计了用户身份凭证票据,经加密后存储在用户浏览器中,这是单点登录实现的关键;(4)设计应用授权模块,完成了基于身份凭证和属性证书的资源授权管理,并生成应用授权访问票据,凭借此票据用户便可对资源进行授权操作。本文所设计的单点登录系统,综合了PKI、PMI、Cookie等技术,结合数字证书的特性,不仅解决了用户在访问多应用系统时要输入多个用户名和口令的麻烦,而且能够为安全域中的用户提供较为完整的安全服务,包括统一的身份认证和资源的授权管理。同时该系统引入加密、签名等安全机制,具有较好的安全性,可以有效防止攻击和欺骗。在对安全服务要求越来越高的今天,该系统具有较为广泛的应用价值,是实现单点登录的一个很好的解决方案。