论文部分内容阅读
在互联网飞速发展的今天,Web应用已越来越多地深入到人们的生活、办公、娱乐等各个方面,很多应用都具有其独立的认证、授权管理机制,用户在访问同一公司的不同应用时需进行多次登录。在用户层面上,不仅给用户带来不便,而且不利于用户的信息安全;在运营层面上,浪费人力物力开发、运行和维护鉴权系统。因此实现SSO(单点登录)功能是十分必要的。目前市场上存在大量用于业务平台整合的SSO方案,但这些SSO方案均不具备单点登出功能,且尚无针对集团公司及其子公司的业务平台整合方案。对此,本文阐述了单点登录统一认证系统产生的背景以及意义,介绍了国内外发展的现状,然后对SSO系统、缓存、Socket通信以及动态服务等技术进行了介绍和分析,并基于对集团公司及其子公司业务平台整合的需求分析,提出了具体的解决方案。利用面向对象的方法对该方案进行实现。在该方案编码实现完成后,再进行功能、性能以及安全测试,最终将该实现方案用于生产环境。该解决方案已经在生产环境稳定运行。该方案与传统的SSO解决方案相比,该方案具有以下特点和优势:1、系统中巧妙使用缓存技术,提高系统响应速度,增加系统的并发能力。利用Java程序中从远程主机缓存中读取数据比从远程数据库读取数据快10倍。缓存使用频率较高的对象,将会大幅度增加系统的响应能力。2、利用Socket长连接通讯,减少资源开销。利用Socket长连接的方式传送数据的速度是Web Service的2倍左右,在高峰期系统与他系统每秒需要完成至少67次的通信。使用Socket长连接方式通讯有效的减少资源消耗。3、利用OSGI框架,更加迅速响应需求变更。在Web容器上更新相关服务需要重启Web容器,这会影响到整个容器中发布的应用。而在OSGI平台上更新服务,只需要更新对应的bundle,受影响的也是该bound模块。因此OSGI平台更新服务影响范围小。更新bundle命令执行的耗时非常短,是重启Web容器耗时的1/11左右。4、该系统具有其他单点方案没有的功能:单点登出。