您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > WebSphere门户单点登录实现与应用集成技术
WebSphere门户单点登录实现与应用集成技术利用WebSpherePortal实现单点登录以应用集成技术规范,更好的满足客户的门户业务需求随着企业门户平台的“平民化”,越来越多的工程师加入到门户项目实施的行列,但由于对门户技术的了解、使用的深度不同,许多门户项目离客户的理想需求还有一定的距离,主要在集成方面,没有从业务上真正为客户集成许多有价值的模块。网上已有的介绍这类知识的文章大多比较片面和简单。所以,撰写了这篇文章,结合国内众多成功案例的经验积累,希望能给读者一个较为详细、全面的门户单点登录及应用集成技术的介绍。通过此文章,读者朋友也许可以发现,门户项目还可以做很多事情,还可以利用门户产品实现更多的价值。希望此文章能够协助读者朋友们更好的实施当前的和未来的门户项目。概述企业信息门户作为企业内部门户基础平台,一大主要用途是实现现有的业务系统、数据资源、人力资源的整合,实现信息(数据)的合理聚集;通过实现统一的用户和统一的访问入口来访问门户平台中整合的相关信息资源,真正实现资源的有效利用,更大发挥企业现有资源的使用价值,提高生产效率。门户应用集成技术作为关键性的技术手段,实现门户网站与业务系统之间单点登陆,以及内容聚集。本文档通过归纳总结,将企业应用集成中可以使用的技术做出相应阐述,为实现门户与业务系统集成提供技术参考。本文将结合实际情况,分析企业应用中,常用的集成技术的核心环节,以及每项技术适用范围。本文档提供技术性的参考,实际工作中将需要结合具体情况选择最适合的集成技术来解决实际的问题,技术在日益更新,文档也将实时将最新的集成技术归纳总结。文章并不涉及具体编码、配置的实现细节,只针对相关的集成技术做阐述,具体实现应当专注于具体的技术环节,同时根据环境与实际需求来做相应的调整。名词解释门户:这里专指利用门户产品构建的各种门户系统,包括B2E门户、B2C门户、B2B门户。单点登录:用户仅需要在门户系统登录一次,就可以访问被授权访问的栏目或者其他应用,用户只需要记住一个帐号即可。通过提供安全登录访问和集中管理应用软件和数据的信息框架,实现用户只需登录一次,即可获得授权范围内所有企业应用程序的访问权。Portlet:Portlet是特殊类型的Web模块,它们被设计成在门户网站的环境中运行,是独立地开发、部署、管理和显示小门户网站的应用程序。Portlet不仅仅是现有Web内容的简单视图。portlet是完整的应用程序,遵循标准模型-视图-控制器设计。Portlet有多个状态和查看方式以及事件和消息传递能力。同时Portlet是可再用的Web模块,它们在门户网站服务器上运行并提供对基于Web的内容、应用程序和其他资源访问。WSRP:通过定义一组公共接口,WSRP允许门户在它们的页面中显示远程运行的portlet,而不需要门户开发人员进行任何编程,使面向呈现的portlet应用程序可以被发现并重用而不用任何额外的开发和部署活动。集成的基础统一用户目录在门户集成项目实施中,首先要考虑的是用户目录的因素。用户目录是用于存储用户身份信息,可利用以下几种方式实现:基于LDAP协议,符合X500标准的用户目录服务产品;定制用户注册表接口(如:基于关系型数据库系统实现、基于本地用户系统实现);统一用户目录可以分为物理的统一和逻辑的统一。物理统一用户目录物理统一用户目录是要求门户与待集成的业务系统使用统一的用户目录注册表,物理统一的用户目录不仅仅包含有用户基本信息,同时包含相关的业务系统资源信息,与业务系统相关的账户信息。为了保证可用性,统一用户目录一般分为中央目录服务器及分支目录服务器,门户系统试用中央目录服务器作为用户存储,各业务系统,可以试用中央目录服务器也可以试用分支目录服务器。中央目录服务器和分支目录服务器通过目录复制技术进行数据同步,如可实现全局复制,也可以实现选择性复制。如图1。图1.物理统一用户目录逻辑统一用户目录一般情况下,由于历史遗留问题以及企业要求等各方面的原因,实现物理统一用户目录的情形不多,更多的是采用逻辑统一用户的方式。逻辑统一用户是指门户与待集成的业务系统不使用唯一的用户注册表,门户信息系统使用单独的用户信息,业务系统使用另外一套自己的用户注册表。建立逻辑统一的用户目录,必须建立门户用户目录与业务系统用户目录之间的联系,实现门户用户与业务系统用户之间映射技术主要包括:CredentialVault(凭证保险库)CredentialVault(凭证保险库)是由WebSpherePortal提供一项目服务,帮助portlet和门户网站用户来管理多个标识。凭证服务包含处理基本认证、LTPA令牌认证和简单基于表单的用户标识/密码登录提问的对象。如图2图2.凭证保险库GSO-Lockbox利用GSO-Lockbox,可以建立起一个用户身份信息和后台应用系统之间的对应关系。这需要依赖于门户应用(portlet应用或J2EE应用)来维护这样的关系映射表(包含门户用户与业务系统帐户之间的关系)。门户用户与待集成业务系统之间映射关系完成之后,可根据业务系统认证方式来选择实现单点登录。用户目录信息同步用户关系映射表建立后,需要随时可以对这种映射关系进行维护,通过定期强制密码更新策略让每一个用户维护自己业务系统的用户、密码是一种选择。更常见的选择是通过管理员进行统一的账户管理和密码的同步推送,这项需求可通过开发完成,或者借助于成熟的企业级安全产品,例如TIM/TDI。如图3所示,利用TIM/TDI实现门户目录与应用系统直接用户目录统一管理和用户信息的同步及清理。图3.试用TIM/TDI实现目录统一管理和信息同步统一认证与单点登录认证意味着用户标识自己以获取对系统的访问权。IBMWebSpherePortal支持以下几种方式的认证:WebSphereApplicationServer的基于定制表单认证机制,这是IBMWebSpherePortal缺省认证方式;第三方认证(通过外部安全性管理器,如TivoliAccessManager或者CASiteMinder),第三方认证提供者确定提问机制和认证方法;安全套接字层(SSL)客户机认证。用户在未标识自己的身份而尝试访问受保护的资源时,Portal(门户信息系统将提示用户提供认证凭证。WebSpherePortal还支持与其它的应用系统实现认证的统一,即支持其它标准的、非标准的认证方式来实现单点登录和应用集成以下其它系统的认证方式均为WebSpherePortal能够支持的:Form方式,用户名和密码、CA认证(X.509v3)、Token认证、WAP身份认证、资源敏感的认证或者自行开发的认证等方式门户与业务系统实现SSO门户与业务系统实现SSO(单点登陆),通过在门户使用portlet技术实现,为业务应用提供访问连接,当用户点击门户站点页面中的连接,或者直接访问门户页面中的某第三方系统的业务模块Portlet时,自动将登陆到需要访问的业务系统,而无需再次进行用户认证。单点登录的实现从技术上可以从不同的维度着手,一般分为“客户端Web应用SSO(Client-WebAppSSO)”方式和“Portal后台应用SSO(Portal-BackEndSSO)”方式,每种方式均有相应的技术实现,如图4Portal单点登录服务:图4.Portal单点登录服务在实际的项目中,常用的SSO的实现方式按照应用系统与PortalServer的交互程度分为三种。需要指出这些SSO的实现方式并没有优劣之分,不同的实现方式适应不同的应用环境。解决现实中遇到的不同问题。真实单点登陆:门户认证中心利用门户系统建立统一的SSO认证中心,通过SSO中心认证后,应用系统利用SSOAPI同PortalServer通信,验证用户是否经过认证。新开发的应用系统大多使用这种SSO的实现方式。这种方式需要对应用系统的认证模块进行修改。多数情况下,使用信任关联拦截器(TAI)也是建立SSO认证中心的常见方式。门户服务器实现了Java认证和授权服务(JavaAuthenticationandAuthorizationService(JAAS))体系结构。JAAS提供了一种用来认证subject和提供细粒度访问控制的办法。JAAS是标准Java安全性模型的一部分;它使应用程序不依赖于所使用的底层认证和授权机制。JAAS使用模块化的服务提供者接口来执行登录和注销操作。通过门户网站的JAAS登录模块建立的凭证包括CORBA凭证、用户和组专有名称、用户标识和密码以及LTPA令牌。在分布式J2EE环境中,portlet可以使用JAASAPI来访问启用了JAAS的后端应用程序。认证中心的建立,可以利用JAAS安全模型实现,例如,通过实现WebSphere自带的LTPA令牌技术来实现门户及各应用系统的认证统一,利用Portal建立公共的SSOToken实现认证统一。也可以通过一些开源的认证模块来实现,如CAS、OpenSSO等。LTPALightweightthirdpartyauthentication,轻量级第三方认证,支持在一个因特网域中的一组Web服务器之间使用单一登录的认证框架。另外,IBM的产品体系中,大部分产品已经可以通过配置的方式实现真实单点登录。如:IBMWebSphereBase产品(例如IBMConnections、Quickr、ECM等)、IBMWebSpherePortal、IBMLotusDominoServer之间的用户身份认证和单点登录。IBMWebSpherePortal与IBMDomino提供基于cookie的轻量级第三方认证机制(LTPA)。当LTPA机制用于由多个服务器组成的环境中时,它是通过使用DomainCookie而启用的。这种经过加密的会话cookie被放置在用户浏览器中,并包含了一些信息,WebSphere或者DominoApplication服务器可以加密这些信息,并使用这些信息来说明用户已经通过该cookie所覆盖的DNS(DomainNamingService,域名服务)域中的认证。伪单点登陆通过WebSpherePortal认证或者SSO中心认证后,应用系统还要自己进行用户的认证。这种方式适用于那些无法修改认证模块的应用系统。这种情况可以利用应用系统比较基础的接口来实现,如URL+User+Password、Form表单代填等。主要有以下几种技术选择:利用WebSpherePortal凭证库认证模块portlet通过获得一个CredentialVaultPortletService对象并调用它的getCredential方法来获得凭证。对于所返回的凭证,有两种选择:使用来自被动凭证(passivecredential)的密码或密钥,用特定于应用程序的调用来传送这些密码或密钥。使用被动凭证的portlet需要从凭证中提取出加密信息并与后端应用程序进行所有认证通信。调用主动凭证(activecredential)的认证方法。主动凭证对象向portlet隐藏了凭证的加密信息,没有任何办法可以从凭证中提取出这些信息。主动凭证提供另外的方法来执行认证。后一种情况允许portlet通过基本认证、SSL客户机认证、摘要认证或者LTPA来触发远程服务器的认证,而不必知道凭证值。使用主动凭证意味着门户网站代表portlet进行认证,而且这个portlet可以只使用开放连接。尽管这可能并不适合于所有情况,但它却是您应该首选的技术。基于Form方式这种方式是通过模拟用户凭证提交,将业务系统相关的用户凭证通过Form提交的方式,传递给业务系统认证模块。这种方式适合待集成的业务系统认证方式采用From表单,当通过portlet技术封装Form表单包含有业务系统相关的用户凭证,以及资源URL。通过将业务系统所需的用户凭证通过Form(表单)提交方式,模拟用户登陆,业务系统将用户所需的资源通过web方式反馈用户。适用于基于B/S的Web业务应用系统,并且用户认证方式提供Form表单认证服务功能。U
三七文档所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
本文标题:WebSphere门户单点登录实现与应用集成技术
链接地址:https://www.777doc.com/doc-2867078 .html