企业门户实施关键技术及解决方案上篇

1.1  统一用户

使用LDAP作为统一用户管理的产品实现有很多种,例如:IBM Directory Server、微软的AD等。本章以微软的AD为例,介绍统一用户设计。ADActive Directory)服务是Windows 平台的核心组件,它为用户管理网络环境各个组成要素的标识和关系提供了一种有力的手段。Active Directory 不仅可以用来管理计算机、网络,还可以用来管理用户。Active Directory的架构(Schema)是一组定义,它对能够存储在Active Directory中的各种对象以及有关这些对象的各种信息进行了定义。标准的Active Directory属性不满足目前企业系统特性要求,需要对其进行扩展,对用户微缩图像、汇报关系及岗位等。

Active Directory作为企业统一用户数据存储的主要形式,门户和支持Active Directory的系统将用户源直接连接至Active Directory服务器,或者直接通过Active Directory获取用户、群组、角色数据。在企业通常使用的账号命名规则基础上,制定更加规范和标准的账号命名规则。门户中用户账号作为企业主账号,遵照新的命名规则进行命名,已在其他系统中使用的账号如果与主账号不一致,则采用账号映射的方式在单点登录时使用。

企业门户系统通过专有的账号连接Active Directory服务器,一般为管理员账号。为了保证数据的安全,企业门户系统和Active Directory之间的数据经过加密后传输。Active Directory服务器以树形目录的形式存储用户、组织、角色的数据,如图1-1所示。这些数据可以在Active Directory自带的控制台上进行修改,也可以在企业门户系统用户管理模块中进行维护。只要一方进行了修改,另一方即可马上体现。

图片35.png

1-1  Active Directory服务器以树形目录的形式管理用户和企业组织机构

一用户的数据来源于HR系统,由HR提供人员和组织的读取数据接口与增量变化的数据接口。由Portal采用系统定时轮询的方式和人工手动触发程序。之所以采用LDAP用户通过HR系统同步,是因为一般来说,HR部门负责最新的人员信息更新,从业务角度讲,这是HR部门的职责,LDAP系统通常由IT部门负责维护,而IT部门是没有更新最新人员信息这个职责的。

1.2  个性化

个性化是门户系统的重要特性,个性化功能主要体现在三个方面,即分别根据用户角色、业务规则、用户定制来体现,实现为不同用户呈现合适的内容。

1.2.1  基于角色的个性化

当用户访问某一页面时,系统管理员可以在后台为不同的角色建立不同的应用页面,内容加载时自动加载所在角色的页面,如图1-2所示。针对同一路径的页面,系统管理员按不同角色配置该角色需要使用的门户Portlet。用户登录后,系统在安全上下文中获取角色类别,当用户访问某一路径的资源时,由门户系统的导航规则引擎,根据用户角色自动定位到相应的页面。图片36.png

1-2  Portal服务器根据不同的角色加载不同页面的个性化原理

根据不同的角色展示不同的内容,针对同一页面资源,可以通过授权方式实现,即对页面中Portlet访问权限进行配置,按角色进行授权。当用户访问页面时,系统将屏蔽没有访问权限的资源。

1.2.2  基于业务规则的个性化

根据用户属性、系统会话属性、环境上下文设定判断规则,根据条件进行组合运算,得出结果。门户页面在渲染时,根据结果决定进行一定的业务处理。比如某一Portlet进行可视规则的应用,即不通过权限,而是根据用户访问的时间段或网络位置,决定当用户访问该页面时是否呈现该Portlet

1.2.3  用户内容定制

门户提供了用户个性化定制功能,用户可以根据个人喜好设置参数。只要给用户授权某一页面的编辑权限,用户即可修改页面的界面风格、增加和删除Portlet、对Portlet进行位置变更。如果Portlet具有让用户定制私人参数的功能,用户可以通过配置参数,根据个人喜好和习惯展示风格和内容。用户个人的定制不影响其他用户使用,如图1-3所示。图片37.png

1-3  用户内容定制

1.3  单点登录

实现Windows域认证,经过Windows桌面认证后,进入门户无须再输入账号和密码。用户进入门户后,在首页提供已进行单点登录集成并且用户具有访问权限的系统列表,用户点击后可以弹出新窗口,直接进入业务系统而无须输入账号和密码。

Active Directory中账号命名规则尽可能采用各个业务系统都遵循的通用命名规则,与通用规则不一致的,需要对账号进行映射,对于特殊的系统,如Lotus Domino在单点登录时,需要保存用户的凭证。

实现PortalWindows域的集成认证,主要通过SPNEGOSimple and Protected GSS-API Negotiation,是微软提供的一种使用GSS-API认证机制的安全协议)协议实现。Portal与桌面操作系统使用同一个Active Directory服务器。在IE浏览器中,将Portal的访问地址加入到信任站点,同时启用Windows集成认证。只要用户通过域认证的方式成功登录桌面操作系统,在IE浏览器中输入Portal的访问地址,就会自动实现系统的登录,如图1-4所示。

Portal支持单点登录集成,支持J2EE.NETDomino系统。Portal单点登录的核心功能为身份认证服务(IDP),采用SAML作为单点登录过程中的数据交换标准。SAMLSecurity Assertion Markup Language,安全断言标记语言)是一个基于XML的标准,用于在不同的安全域(Security Domain)之间交换认证和授权数据,是用于表示和交换用户身份、身份验证和属性信息的 OASIS 开放标准。SAML 已经成为单点登录(SSO)解决方案的常用技术和公认标准,并已经成为×××通信行业标准。图片38.png

1-4  Portal登录

Portal支持多种SAML绑定方式,如HTTP-POSTSOAPHTTP-Redirect等,主要采用SAML HTTP-POSTHTTP-Artifact两种方式。

SAML HTTP-POST单点登录方式以用户(浏览器)为中介,实现认证系统(IDP)和业务系统(SP)之间的信息交换。从用户到IDPSP可以使用HTTP安全通道(HTTPS/TLS)保证传输过程安全。SAML HTTP-POST单点登录实现流程如图1-5所示。

图片39.png

1-5  SAML HTTP-POST单点登录实现流程

HTTP-Artifact单点登录方式使用了两种绑定(HTTP重定向/POSTSOAP)搭配完成登录过程。使用HTTP重定向/POST绑定来实现用户(浏览器)自动转向和传递Artifact,使用SOAP绑定实现IDPSP之间的安全通信。IDPSP通过用户中介传递令牌(Artifact),而不是最终的响应结果。令牌(Artifact)实现用户会话与其身份认证响应的关联,它不具有实际的意义,也不能重复利用,就是令牌被窃取了,也不会对认证系统构成安全威胁,IDPSP之间的SOAP通信是安全的。HTTP-Artifact单点登录实现流程如图1-6所示。

图片40.png

1-6  HTTP Artifact单点登录实现流程

无论采用上述哪种方式实现单点登录,都需要对业务系统(SP)进行必要的改造。Portal提供了单点登录接入参考实现及相关开发包、IDPSAML元数据描述文件。同时业务系统也向IDP提供了SAML元数据描述文件,并且到单点登录模块的业务系统管理中注册。业务系统基于Portal提供的开发包对本系统的登录程序进行改造。

对于.NET系统,如果用户源为同一个Active Directory服务器,建议改造为与Windows域集成认证。如果无法改造,则通过解析Portal IDP提供的数据或Portal产生安全令牌,从中获取当前用户的信息,对系统的认证程序进行改造,实现单点登录。

对于Domino系统,需要在Portal中保存用户的凭证,采用轻量级第三方认证(LTPA)的认证机制,LTPA 定义了存储在客户端上的令牌格式。Portal登录后通过DIIOPDomino Internet Inter-ORB Protocol,互联网内部对象请求代理协议),利用Domino提供的标准接口,创建LTPA令牌,当用户访问Domino系统时,系统检测到本地具有合法的LTPA令牌即自动实现登录。

1.4  内容管理

随着 IT 应用的深入普及,该企业集团积累了大量的信息资源,内容数据已成为关键性资产。科学管理和合理开发这些信息资源已经成为企业正确决策、增强竞争力的关键。企业内容管理系统是一种管理、集成和访问各种格式的内容数据的应用软件,它的主要目标是使用一系列策略、方法和工具来组织和存储涉及企业流程的内容文档,处理的对象范围包括所有的结构化数据和非结构化文档。

Portal Web内容管理器(WCM)是用来创建和管理发布于互联网、企业内部网以及企业门户网站上的网页内容的管理系统,它提供了一系列工具来管理网站内容的创建、审批以及最终的发布。这一系列工具所组成的复杂而又精密的内容管理系统使网站的建设不再仅仅是专业技术人员的领域,使非技术人员也能参与其中。

Portal提供了基于JSR 283规范的Web内容管理。采用模板驱动、数据录入和展示分离原则,用户可以按自己需求定义内容编写模板,系统提供了富文本、日期、数字、字符、文件等常用的属性字段。基于编写模板提供的元数据,用户可以定义内容展示的风格,只需要有HTML基础便可自行设计内容展示形式。WCM还提供了版本控制、细粒度的权限控制、数据统计功能,同时也内置了丰富的展示组件,如图片、视频、标签云等开箱即用的Portlet,可以轻松构建信息站点。

WCM的模板分为编写模板和演示模板,编写模板为录入内容的表单,用户可以按企业的需求进行定制。WCM提供了常见的信息录入字段,如数字、文字、日期、图片、附件等,每种类型的字段都提供了数据录入的人机交互UI,并且可以对字段进行约束和校验。演示模板为内容展示格式,定义演示模板可以基于某一编写模板提供的用户自定义和系统自动生成的字段随机组合而成。演示模板中的数据采用JSP标签进行封装,通过标签的属性定义内容展示格式。编写模板和演示模板都可以进行重复使用。

WCM可以对内容站点进行管理。可以设定多个内容站点进行独立管理,彼此隔离。每个站点可以设定不同的内容区域,针对每个区域指定专门的管理员和内容查阅权限,指定专门的内容编写模板等,针对内容可以进行是否可以评论、阅读回执等设定。WCM提供了内容数据分析统计功能,如对访问量、数据录入、评论等进行分析统计。WCM中内置了简单的流程管理,同时也与第三方工作流系统进行集成。

1.4.1  站点管理

站点管理就是对站点内容以树形的方式进行归类和存放。可以设定站点管理员进行委托管理(见图1-7)。

图片41.png

1-7  创建站点

站点区域是对站点内容的细分,站点区域里可以包含子站点区域,可以指定信息发布者、管理员以及访问者(见图1-8)。

图片42.png

1-8  新建站点区域

1.4.2  网站模板

Portal内容管理基于模板驱动,内容录入和展示均无须开发,只需要对模板进行配置,即可对内容进行入输入和展示操作。

1.编写模板

编写模板指的是用户发布新闻时所采用的新闻字段类型,如:新闻标题、新闻发布者、新闻发布时间等。可以指定内容录入的数据属性的类型和格式,支持数字、日期、图片、附件、文本等。每种属性都可以指定不同的人机交互界面,如图1-9所示。

完成编写模板后,系统会自动按模板生成内容录入和编辑界面。管理员还可以对生成的界面进行美化和调整。编写模板也可以以HTML代码的形式展现,并使用不同的标签,比如,IBM WebSphere Portal使用的是IBM Lotus Web Content Management标签,其他产品分别使用了自己的标签。这些标签分别代表不同的字段值,允许用户直接调用,并以Java代码处理其中的逻辑。用户可以在代码显示模式下直接编辑,原理同DreamWeaver中的可视化视图、代码视图,如图1-10所示。

图片43.png

1-9  编辑编写模板

图片44.png


1-10  以代码的模式编辑编写模板

2.演示模板

演示模板用于显示发布的内容格式,通过HTML和门户的标签封装内容显示。在页面上配置的信息展示Portlet根据演示模板调取新闻条目的各个字段,并以演示模板中定义的显示方式展现。在新建演示模板时可以基于某一编写模板。在对演示模板进行编排时,可以选择编写模板提供的属性,也可以提供内容的公共基础属性,如编辑者、内容时间、内容路径等。同时Portal WCM也提供了相关的组件,如评论、访问量等扩展组件,基于这些组件可以组建更加丰富的页面。

演示模板通过HTMLJSP标签代码实现,按自己的需求进行定制开发。可以通过第三方网页编辑软件,如FrontpageDreamwaver等工具先将页面编写好,将HTML代码导入演示模板代码编辑器中,再将内容的属性填充到HTML中(见图1-11)。

WCM提供了标记与评级功能,旨在让用户方便地对网站内容进行标记和评级,以及查看标记和评级情况,更方便地整理、查找网站内容以及进行内容分类。

1.4.3  展示组件

WCM同时还提供了丰富的可以重用的展示组件,例如菜单组件、蓄文本编辑组件等,并且可以以可扩展的形式用Portlet发布。

图片45.png

1-11  以代码的模式编辑演示模板

1.4.4  多媒体支持

企业对内容管理不限于文字和文档,还包括大量的音频、视频、图片。WCM提供了视频和图片的特点支持,针对图片WCM提供了图片库功能,将上传的图片共享,可以在多个内容之间引用;针对视频支持多种格式的文件,提供了视频组件。利用WCM的多媒体功能,为用户呈现多彩、有声有色的信息浏览和交互界面(见图1-12和图1-13)。

图片46.png

1-12  多媒体支持(图片)

图片47.png

1-13  多媒体支持(视频)

1.4.5  内容搜索

WCM通常都会提供基于全文检索的内容搜索功能,可以对HTMLXMLTXTPDFWord进行搜索。WCM的搜索功能提供了通用的词库,供建立索引时进行分词,可以自行加入特殊的词汇,提高搜索的准确性。

1.4.6  内容标签

内容标签是Web 2.0的重要特性,可以对内容进行横行、多维度的分类。内容标签分为标准化和自由式两种。标准化标签是专业或专有的术语词汇,由管理员统一维护;而自由式标签则根据内容文章的重要词汇出现的频率和内容所表述的主要意义,录入人员在录入内容时,加入一个或多个标签。

标签一般按照字典排序,按照热门程度确定字体的大小和颜色,这样按照字典或者热门程度来寻找信息便成为可能。点击标签时,可以打开与标签相关的内容词汇。

1.4.7  版本控制

WCM提供了版本控制功能,当对内容进行编辑时,可以保留原来的版本,当需要时可以从原来的版本中恢复(见图1-14)。在创建新版本时,可以对版本的变化进行批注。

图片48.png

1-14  版本控制

1.4.8  内容统计

WCM不仅提供了功能强大的内容发布和展示功能,还提供了多维度的统计功能,从多个角度进行统计和分析(包括工作量统计、文章统计、模板统计、访问量统计以及评论量统计),对内容管理进行持续改善,达到更好的效果(见图1-15

图片49.png

1-15  内容统计

1.4.9  WCM应用

综合利用WCM的功能,通过内容规划和模板定制,可以快速搭建内部企业网站,以新闻为主,包括通知公告。以文字、图片、视频多种方式,构建内容新颖、版面信息丰富、生动多彩的网页吸引更多的用户关注企业发布的新闻,通过新闻发布平台,传达最新的新闻资讯和宣扬企业文化。




猜你喜欢

转载自blog.51cto.com/134834/2315650