论文部分内容阅读
随着信息技术和网络技术的迅猛发展,企业内部的应用系统数量越来越多。由于这些系统互相独立,用户在使用每个应用系统之前都必须进行相应的系统身份认证,为此用户必须记住每一个系统的用户名和密码,这给用户带来诸多不便。特别是随着系统的增多,出错的可能性就会增加,用户信息受到非法截获和破坏的可能性也会增大,安全性就会相应降低。而且,用户每访问一个不同的应用系统,便需要重新登陆一次,严重影响了用户的体验。在应用需求对市场的强力驱动下,各种企业级的单点登录方案应运而生。单点登录简称SSO(Single Sign-On),它是一套身份认证机制,用来实施在多个独立的应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。整个企业内部,对所有应用系统的访问,都必须从一个单点进行登陆认证。成功通过认证的用户可以访问到所有Web应用系统,并且在系统之间切换时,将不再受到访问限制。本文结合实际项目需求,设计了基于Java平台的Web应用系统的单点登陆系统模型,通过部署第三方服务,解决了用户安全上下文在跨域系统之间传递的问题。在实现单点登陆的同时,建立统一用户管理,系统分散鉴权的机制。在单点登陆系统的开发过程中,兼顾了与原有应用系统之间的低耦合性,对应用系统的改造尽量不破坏其固有的业务逻辑;注重全局系统的可扩展性和可配置性,采用成熟的J2EE体系架构来进行服务端的开发,使今后企业内部增加新的Web应用时,只需对其进行简单配置,就可以方便地“插放”到单点登陆系统中去。将企业内部原本独立的多个Web应用系统进行登陆认证的整合,为企业带来许多好处:所有应用系统共享一个身份认证系统来进行登陆验证,增强用户体验;B/S模式下对多个Web应用系统进行跨域的自由切换;统一用户管理,单一认证入口,使应用系统安全性增强。