论文部分内容阅读
随着企业信息化建设的不断进步以及互联网技术的发展,现代企业拥有了越来越多的各类应用系统,以完成企业的生产和管理需求,同时我们发现,这些应用系统往往相互独立,彼此很少有关联,而且使用的开发平台也是不统一,给用户使用带来一系列的问题,导致同一用户在访问不同的应用系统时进行多次身份的认证和确认。随着这些相互独立应用系统的增加,用户需要记住不同应用系统不同的用户名和密码的数量也随着增加,这样很有可能在平时的使用中,用户会忘记某一系统的用户名或密码,为了防止忘记,用户会把用户名和密码写下来以免忘记,而在无意中引起了诸多严重的安全问题。受到影响的不仅仅是企业内部自己,也会影响企业之外的商业伙伴和客户,他们可能需要从企业外面访问企业门户或者应用系统通过互联网,他们进入不同的应用就要登录多次。因此,用户需要一个统一的登录方案,即用户登录一次即可访问企业其他应用的方案一单点登录Single Sign On (SSO)。本文以辽宁省公安金盾工程为背景,针对企业单点登录系统进行了研究和分析。首先,对国内外目前单点登录模型进行了分析与研究,通过比较分析采用了耶鲁大学的CAS单点登录模型,通过对CAS单点登录模型的原理及流程的分析与研究,发现CAS模型中存在单点失效的风险和认证方式单一,进而对CAS单点登录模型进行了改进和扩展。利用负载均衡技术解决了CAS单点失效的问题即把原来单一统一认证服务器改进成由一个调度服务器和多个认证服务器构成的集群,采用轮询算法实现CAS认证服务器的调度。同时在该模型中扩展了身份认证,采用了基于LDAP存储用户信息和角色。针对原有模型中用户访问应用系统的凭证TicketRegistry是在内存中创建映射表的存储,随着访问量的增加极大的影响了系统的运行,改进成采用嵌入式数据库的方式存储。最后完成了单点登录系统的实现,达到了用户登录一次即可访问企业所有应用的要求,并在辽宁省公安金盾工程的实际项目中得以应用。