项目管理人员继续教育论文-中级-企业信息门户系统单点登录的研究与实现

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

项目管理人员继续教育论文第1页共9页企业信息门户系统单点登录的研究与实现摘要:随着企业信息化的发展,每个企业都建立了许多支撑企业运营的应用系统,提升了企业的管理水平和运营水平,奠定了企业信息化发展的基础。然而在这一过程中,也暴露出一些问题,最突出的就是“信息孤岛”问题。要克服“信息孤岛”问题,在技术上首先要从应用集成入手,通过企业信息门户系统平台整合现有分散的应用系统,为信息有效共享提供一个系统平台。在此基础上,通过企业信息门户,形成一个协作和共享的企业信息平台。企业信息门户系统实施的关键技术是实现对企业内各个异构应用系统的整合,而整合的关键技术点一是实现企业门户对企业内用户的身份认证,保证合法用户的登录,并拒绝非法用户的登录(即:用户认证问题);二是保证当合法用户登录企业信息门户后,能直接使用其它异构的应用系统,无需再次进行用户身份认证(即:单点登录SSO问题);三是门户系统能保证各个应用系统的安全,确保用户只能在各个应用系统授权的范围内操作(即:授权问题)。本文重点针对单点登录技术进行深入的讨论。关键词:企业信息化一体化平台单点登录SSO统一认证项目管理人员继续教育论文第2页共9页0引言随着企业信息门户(EnterpriseInformationPortal,EIP)中各种应用系统不断增多,用户在日常工作中需要访问多个系统,不仅要登录多次,而且还要记忆多套地址、用户名及密码。除此之外,由于开发环境的差异和体系架构的不同,各应用系统可能是跨平台的,也可能有自己独立的安全认证机制,然而这些安全机制为企业应用集成(EnterpriseApplicationIntegration,EAI)带来极大的困难。同时,用户需要登录的系统越多,出错的可能性也就越多,受到非法截获和破坏的可能性也随之增大,安全性降低。为了解决分散、互不信任的用户认证,实现各应用系统之间相互通信、数据共享和应用集成,单点登录机制(SingleSign—On,SSO)将所有集成应用的用户认证过程都集中在企业信息门户中进行统一管理,可以提高用户的访问效率。1概念简述和单点认证机制1.1portal的概念标准定义是:EIP-EnterpriseInformationPortal,企业信息门户就是通过浏览器实现对整个企业信息的访问,用以加速和提升决策进程。它有以下两个主要特征:1)无论是广域网络或局域网络,都可以利用标准的浏览器实现单点访问;2)经过许可的人员不需要特殊的培训和软件,即可以在企业内部或外部访问到他所需要的信息。通常说法:门户是作为企业的客户、员工和合作伙伴以统一的、个性化的、多渠道的方式访问企业的信息和服务的入口。1.2portlet的概念Portlet是基于java的web组件,由portlet容器管理,并由容器处理请求,生产动态内容。Portals使用portlets作为可插拔用户接口组件,提供信息系统的表示层。作为利用servlets进行web应用编程的下一步,portlets实项目管理人员继续教育论文第3页共9页现了web应用的模块化和用户中心化。portlet规范,即jsr(JavaStandardizationRequest)168,是为了实现portal和portlet的互操作。它定义了portlet和portlet容器之间的和约,让portlet实现个性化、表示和安全的api集。1.3LDAP的概念LDAP是轻量目录访问协议,英文全称是LightweightDirectoryAccessProtocol,一般都简称为LDAP。它是基于X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPmanRFC网页中找到。1.4统一用户认证一般来说,提供应用集群单点登录入口的企业门户系统所带的目录服务系统应该承担起统一身份认证的功能。如果集成外部身份、认证、登录产品,企业门户系统首先作为一个单独应用与其它各应用系统共用身份、认证、登录产品提供的统一用户管理和身份认证管理的功能,其次门户系统作为各应用单点登录的入口或直接通过单点登录获取各应用数据进行展现。基于成熟的第三方软件产品进行统一目录服务、统一用户管理、单点登录的跨域认证等问题进行方案设计,并提出信息横、纵向跨域交互时因产品不同而进行的整合方案。企业门户系统典型设计为避免重复,将对基于门户平台软件自身提供的功能实现身份、认证、登录的解决方案进行设计,并重点关注“企业门户系统”与“身份、认证、登录”之间存在的关系。项目管理人员继续教育论文第4页共9页图1-1:企业门户系统登录流程2单点登录原理与设计方案2.1单点登录2.1.1功能定义用户登录到企业门户系统后通过门户访问受保护的业务应用系统时,一次登录就能在企业门户系统和通过门户集成的各业务应用系统之间带身份漫游,无需再次登录和重复认证身份。2.1.2模块划分单点登录控制中心(1)单点登录:完成单点登录控制、转向,以及应用系统隐式自动登录。(2)应用系统session维护:维护门户会话与已登录应用系统会话时间。(3)单点注销:从门户注销时,注销所有加入单点登录并已访问的应用系统,并完成门户注销。项目管理人员继续教育论文第5页共9页用户关联管理用户关联管理:用户关联管理提供门户帐号与各应用系统的关联维护功能。2.1.3应用场景用户登录企业门户系统后,首次访问应用系统需要输入应用系统认证信息后才能进入应用系统,之后再访问应用系统时可以直接进入应用系统,当应用系统修改该用户的认证信息后,则需要再次输入正确的认证信息后才能进入应用系统,同时,用户注销门户时,也同时从登录的所有应用系统中注销。2.1.4系统架构图2-1:单点登录系统总体部署如上图所示,单点登录系统主要由用户关联库以及单点登录控制中心构成,所有到业务系统的访问请求都将转发到单点登录控制中心,控制中心会解析所获取的请求数据并进行验证,最后根据验证的结果进行处理。从上图可以看出,单点登录控制中心同用户管理平台实际上相互之间具备一定的独立性,控制中心只需要向用户管理平台发起服务请求,获取和解析响应结果既可,并不需要关系到更多的系统。单点登录技术思想是在信息门户中把复杂的安全策略转变为单点登录服务,项目管理人员继续教育论文第6页共9页即使用户需要访问不同的应用系统,也只需要登录一次,随后就可以对所有被授权的应用系统进行无缝访问,通过对实际项目的需求和实际情况,在此进行两种单点登录的方式。2.2基于Form表单认证方式及实现原理表单认证是推荐的认证方式,适用于大多数应用系统。用户在定制的登录页面中输入用户名和密码,并提交给身份认证管理服务器。对于安全性要求较高的应用系统,需要使用TLS/SSL对通信进行加密,以提高安全性。该方案的主要思想是将原系统的登录信息(用户名和密码)采用统一管理的方式存放在数据库中,在用户登录信息门户平台进入SSO系统,访问其他Web应用系统时,通过代理登录拦截Web用户请求,首先判断是否首次登录;如果登录,再将请求信息发送到SSO认证系统,该系统将登录信息与数据库进行映射,并将查找到的映射信息自动提交给原系统,从而提供企业信息门户中不同业务程序的权限管理和单点登录功能。加密模块主要是在代理端和认证系统之间建立一个可靠的加密通信方法,实现用户、业务系统登录信息和数据库的加密传输。系统模型结构如图1所示。图2-2:系统模型结构图项目管理人员继续教育论文第7页共9页3基于Form表单认证方式实现在通常情况下,大多数的Web应用系统或者称为B/S结构的系统都是以Form表单形式让用户提交用户名和密码,同时以post方式传值,服务器端接受请求并后台处理完成整个认证过程。所以对于这些系统来说,只要生成具有相同信息的表单,然后将其提交到系统指定的验证页面或触发某一验证函数进行登录。基于这样的原理我们进行如下过程分析。所谓生成具有相同信息表单,也可以称之为模拟Form表单,实际上就是原业务系统登录跳转页面,该页面写有与业务系统登录界面完全一致的所有关键属性,唯一不同的是用户名和密码来自数据库的映射信息而不再是用户手工输入。为此,针对任一业务系统,都要有相应的跳转页面,而页面间彼此相异、独立。显而易见,这样的方式满足业务系统“即插即用”的特性,对系统的扩展具有良好的支持效果。假设现代人口与生殖健康领域某一应用系统的原登录表单代码如下。formname=”formlogin”action=”loginAction.jsp”method=”post”用户名:inputname=”user_id”type=”text”size=”12”密码:inputname=”password”type=”password”size=”12”登录:ahref=”javascript:document.forml.submit();”取消:ahref=”javascript:document.forml.reset();”/form上述代码中密码的字段属性password是从数据库中读取数据并利用value属性赋值,故只能实现对用户名和口令的手工录入。同时,action指向的路径也无法实现不同区域拥有不同的登录页面.为了克服以上屏障,实现单点登录,首先将表单中type属性全改为hidden,保证数据的安全;然后为type属性的input设置value值;其次从数据库查找action跳转的匹配URL。关键代码如下:formname=”formlogin”action=”%url%”method=”post”inputname=”user_id”type=”hidden”size=”12”value=%=user%inputname=”password”type=”hidden”size=”12”value=%pass/form然而,对于其他Web应用系统(如邮箱、论坛系统),由于所有用户的登录入项目管理人员继续教育论文第8页共9页口均相同,所以action属性就固定不变,使用其绝对路径。使用这种凭证加密和代理登录相结合的方式最大好处在于具有即插即用特点,在实施单点登录过程中完全无需对Web系统做任何改造,保持系统现有的软硬件及网络环境,充分保留和利用用户在原有业务系统中的账户信息。通过页面逻辑实现对数据库的访问及信息的提取,模拟表单来完成整个单点登录过程。数据库设计:1.单点系统表xsso_ssosystem字段名称字段说明记录值uuid唯一标识(pk)40284896146364870114637035940015name单点系统名SinaVipdefaultProfileUuid默认档案名1234profileuuiderrorKeyword错误页面的关键字,判断登录是否成功(关键)用户名或密码错误,请重新登录2.单点系统profile表xsso_profile字段名称字段说明记录值uuid唯一标识(pk)1234profileuuidprofileNameProfile名称SinaProfile1profileDescriptionProfile描述新浪Profile1ssoSystemUuid所属单点系统uuid40284896146364870114637035940015actionurl单点登录form的action值=0target单点登录form的target值_selfsubmitmethod单点登录form的method值postinputenameuserid单点登录form的用户名fielduserinputenamepassword单点登录form的用户名fieldpass3.单点系统公共input表xsso_publicinput字段名称字段说明记录值uuid唯一标识

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功