基于SSO的统一用户管理系统的设计与实现

2017-12-21 12:11:02胡丽丽
数字技术与应用 2017年10期
关键词:信息共享

胡丽丽

摘要:本文设计实现了一个基于SSO的统一用户管理系统,阐述了系统的技术路线和框架,详细描述了系统的分析,并简要介绍系统的实现方法。最后介绍了统一用户管理系统在政府用户管理中的应用,研究如何通过统一用户管理系统为公众和政府提供信息资源共享与服务。

关键词:SSO;统一用户管理;统一身份认证;信息共享

中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2017)10-0136-02

目前,政府信息化建设正快速发展,覆盖政府部门业务的信息系统已不断开发成熟并使用,诸如内部OA系统、项目管理系统、政务服务管理系统等。而这些信息系统功能需求不一,开发大多是相互独立的。这使得用户完成某项工作需要进入不同的系统,而每一个系统大都需要用户输入用户名、口令等验证身份,这样用户就得面对多个系统的用户名、密码,给用户访问业务系统带来了不便性。同时,用户需要在各个应用系统间频繁切换登陆,业务操作的复杂性增加了,降低了工作效率。因此,需要设计一个能够高度整合用户信息的系统,使得用户能够单点登陆,多点漫游,这样基于SSO单点登录的统一用户管理系统就应运而生。

1 系统架构

1.1 技术路线

统一认证和授权提供了对用户的认证、授权、加密等管理,对各接入系统提供SSO单点登录接口,系统提供Web Service接口,同时支持xml和 json两种数据格式来接入各应用系统;认证模式采用基于OAuth2.0技术的票据和令牌认证资源。

SSO单点登录就是当用户访问各子系统的应用时,只需要提交一次认证信息就可以访问有访问权限的应用,从而简化登录过程,提高工作效率。通过放置反向代理服务器,完成所有用户对后台Web资源的访问,可以与所有Web应用进行集成,与后台的Web应用建立连接,同时,在将用户的登录信息传送给应用的整个过程中保持着对用户的透明性。只要用户登陆了一次子系统,便可以有权访问所有的Web应用,此过程由代理服务器完成。

1.2 系统框架

系统主要由两部分组成,分别是统一身份管理子系统、统一认证子系统。统一身份管理子系统主要完成用户和组织机构间关联关系的构建,其中,与用户有从属关系的组织机构可以是纵向的,亦可是横向的;统一认证子系统主要实现单点登录令牌的创建与验证。系统主要实现以下功能:

(1)组织和权限管理:统筹规划省内省直、市(县区)所关联的所有行政单位,包括部门和工作组管理,统一配置横向及纵向部门关联信息,方便组织结构代码便捷易懂,无缝推送到各电子政务系统。

(2)用户管理:实现用户信息的统一管理,其中,这些用户信息来源于组织机构中各部门,包括登陆用户名、登陆密码、真实姓名、主组织、附属组织、所属角色及用户顺序等基本资料的管理。

(3)权限管理:包括应用资源、角色管理及授权管理。应用资源为接入到统一用户管理系统中的各类政务应用系统;角色管理针对统一用户管理系统中的用户角色配置,非政务应用系统中的角色配置;授权管理用于控制用户能否访问相应的业务系统,一般用户同步给相关业务系统后就默认能够访问。

(4)安全认证管理:针对电子政务有效性、机密性、完整性、不可抵赖性与审查能力五个方面的安全需求,系统需提供相关接口实现安全认证。

2 系统的功能设计

根据系统架构的分析设计,统一用户管理系统主要基于SSO技术,为用户提供访问各应用系统相应权限内资源入口,实现信息系统间互联互通。下面具体分析一下统一身份管理子系统和统一认证子系统的功能与设计方法。

2.1 统一身份管理子系统的设计

统一身份管理子系统实现用户、角色、组织、部门、组、资源(即业务系统)的统一管理。

统一身份管理子系统具有分级分权管理的功能,即由组织、部门管理员按照系统管理员授予的权限,管理本地、本部门的用户信息,如下级单位的管理员可以管理本级人员和策略等。用户则可以根据需要做自助服务,如更改自己的密码或个人信息。如果用户修改了密码,则会自动更新到各应用系统中 。

新用户需在用户资源库中注册用户身份信息,然后由统一用户管理系统管理员分配可使用资源給用户,由业务系统管理员配置用户在业务系统中的权限。系统监控用户身份信息数据库,当用户身份信息或可使用资源发生变化时,自动触发身份管理子系统中预先制定的流程,将用户信息自动配给各应用系统中。如用户修改了密码,将会触发密码更新工作流将密码自动更新到各应用系统中。

2.2 统一认证子系统的设计

单点登陆技术的实现包括令牌的创建与验证,该过程由统一认证子系统完成。主要流程如下:通过底层的SSO认证模块,用户通过验证,此时,该用户在用户页面获得认证子系统创建的一个单点登陆令牌ID,令牌ID由cookie返回得到;当该用户访问其他已关联应用系统时,cookie传递登陆令牌ID,正被登陆的应用系统令牌ID还原登录令牌,并向SSO验证令牌是否有效。如果有效,则该应用系统可以直接获取用户身份信息,而不再需要用户进行再次认证。

为实现在复杂环境下的单点登录,统一认证子系统提供了LDAP(用户名口令)认证、自注册认证和匿名认证等内置的认证方式,设计了基于SDK/Web Service/HTTP接口的动态票据单点登录、基于SDK/Web Service/HTTP接口的用户名密码单点登录、基于Agent的单点登录和基于HTTP重定向技术表单方式的单点登录。图1为统一认证子系统体系结构图。

统一认证子系统提供了两种用户认证界面,可以是基于C/S客户端的,也可以是基于WEB的 。用户认证界面动态生成,不同用户登陆将显示不同的系统列表,其中,列表由单点登陆系统根据不同的用户、组织和客户端特色化生成,搜集了用户认证信息。用户界面向最终用户显示登陆表单,并将用户认证信息传回服务器端。服务器端调用平台的接口API进行认证。endprint

统一认证子系统提供认证接口,以便实现其他的业务系统与其集成,实现用户认证信息的共享。一旦新的应用系统通过接口完成集成,只要用户通过一次认证,用户信息即可被被集成系统认可。其中,新的接入系统无需建立用户数据库,只在LDAP中拥有一套用户身份信息(用户名和密码,或数字证书标识)即可。

统一认证子系统提供Web Service/Http接口,与应用系统的开发语言无关的需求。为了保证认证过程的安全可靠,可以通过使用https对对会过程进行加密。

3 系统的实现

根据系统的模块分析和设计,通过采用开发工具MyEclipse8.5,Web服务器Tomcat7, 存储管理数据库Oracle,实现统一用户管理系统的开发。基于J2EE标准框架,系统通过Bean层、Dao层、Service层和Action层的大量代码的实现,并以大量Jsp页面展示,通过Struts、Spring、Hibernate及web服务文件配置,实现了统一用户管理系统的功能开发[1]。其中,系统提供基于Web Service和HTTP的两种API认证接口,API接口认证方式和接入系统采用的平台和语言无关。系统通过commnetAuth和easyAuth两套认证流程,保障用户的信息安全,控制保障数据的隐私性。

4 思考

统一用户的管理应用于多个方面,存在的问题不少,如何有效实现用户信息整合,全网互联互通,保障用户信息安全,必须做好各项标准规范的研究和制定,安全管理认证流程。各级政府、各部门的信息化水平程度不一,在系统的设计和实施上要充分考虑到他们的差异性,尽可能多地提供认证方式、接口技术,保障系统的顺利建设。

目前,全国各级政府都在建设统一用户管理系统(平台),如何利用本系统实现省、市级用户管理系统共建共享,這不仅节约财政投资,还可以实现用户数据的共享与交换,能切实为公众和政府提供信息资源共享与服务[2]。

5 结语

立足于政府业务系统用户管理的需要,统一用户管理系统的设计与实现,提供组织和用户管理、统一认证、单点登录、登录入口等服务,提高政府处理业务的协同能力,降低用户使用业务系统的门槛。

参考文献

[1]杜聚宾.搞定J2EE:Struts+Spring+Hibernate整合详解与典型案例[M].北京:电子工业出版社,2012.

[2]陈海伦.基于SSH框架的信用信息管理系统的设计与实现[J].电脑知识与技术,2015,(4X):74-75.endprint

猜你喜欢
信息共享
可持续发展水文水资源信息共享探索及实践
横向动态联盟的信息共享效应研究
中国市场(2016年31期)2016-12-19 07:31:39
基于WebGIS的合肥中小企业信息共享平台的研究
基于供应链的制造业服务化客户逆向服务研究
价值工程(2016年29期)2016-11-14 01:04:54
上市公司内部审计运行管理
商(2016年28期)2016-10-27 20:51:02
中国铁水联运信息系统物理框架设计
科技视界(2016年21期)2016-10-17 20:14:41
利用微信做好班级管理工作的实践研究
成才之路(2016年26期)2016-10-08 12:02:00
大数据时代下医院信息化建设研究
移动临床信息系统应用优势
探索“互联网+”思想在传统货运业的应用