怎样解决SOA架构多系统整合办公系统?

日期: 2013-08-04 来源:TechTarget中国 英文

引言

现在信息化进程已经进入白热化阶段,大部分的企业都已实现无纸化办公,在升级改造已有系统甚至是新研系统中如何兼容整合已有的应用系统都是摆在大家面前的一个难题。本文以实际的企业办公系统设计为基础,主要阐述设计过程中涉及的几个重要的问题及解决途径,为今后此类问题的解决提供一个参考。

1 EOS开发平台简介

Primeton EOS(以下简称EOS)是目前国内较成熟的SOA应用平台,它结合开源Spring编程模型,在一定程度上实现了图形化编程;整合并提供了大量iava构件,可以快速搭建应用系统,提高软件可复用度,提高开发效率;提供了一套组织机构模型,用户可通过在配置文件的配置实现该组织机构模型的服务会话面,通过引擎采用iava的反射机制加载配置类:为客户提供了标准EAR部署结构,便于用户进行调试和部署;提供应用监控工具,方便掌握应用系统运行情况,并定位故障和优化的方向。

EOS工作流是基于EOS平台之上的工作流管理系统,属于EOS产品上的一个业务工具选件。EOS Worldlow包括业务流程定义工具、工作流引擎、工作流构件库、工作流管理监控、工作流客户端等内容。引擎的设计遵循WFMC提出的工作流参考模型标准。

2 单点登录的原理及实现

单点登录即Single SignOn,简写为SSO,它允许用户一次性进行认证之后,就可以访问不同的应用系统,避免了在访问每个应用系统时,都需要登录操作。IBM对SSO有一个形象的解释“单点登录、全网漫游”。

SSO可集中管理企业多个应用系统的登录用户名和密码,不仅减少用户在不同系统中登录造成的麻烦,降低

用户登录出错的可能性,还减少了系统管理员的工作量,如频繁增加、删除、修改多个系统的用户,管理用户权限以及同步各个系统用户数据等。很多国际上的企业已经将单点登录作为系统设计的基本功能之一。

SSO有多种实现机制,主要分为Cookie机制和Session机制两大类。目前市场上有很多专业的SSO商业软件,如Netgrity的Siteminder、Novell公司的iChainRSA公司的ClearTrust等。这些商业软件一般适用于客户对SSO的需求很高,除了价格问题外,通常还需要在应用软件中增加代理模块,对客户自己的应用系统支持未必十分完善,还需要在实际应用中进行修改。本文选择Cookie机制的开源单点登录产品CAS,下面分析该产品的实现机制。

Cookie是一种客户端机制,它存储了用户在使用网上应用系统的部分内容,主要包括:名字、值、过期时间、路径和域,而路径与域合在一起就构成了Cookie的作用范围。因此用Cookie方式实现SSO,要求必须是同一域名下的应用系统。

单点登录分为“服务端”和“客户端”。服务端就是单点登录服务器,而客户端可以是“函数库”或者“插件”。首先需要把客户端插件安装到各应用系统中,或者将客户端函数库包括在代码中,即利用单点登录的客户端替换了原来应用程序的认证部分的代码。

其次将单点登录服务器的登录页面作为办公系统的登录页面,用户输入用户名和密码后,单点登录服务器会对用户名和密码进行认证。认证通过之后,单点登录服务器采用Ticket机制进行某种授权,从而实现与应用程序的交互。授权完成后,页面自动重定向,回到办公系统首页,就完成了一次登录操作。此时单点登录服务器会在客户端创建一个加密的Cookie,其中保存了用户登录的信息。如果用户希望进入其他应用程序,则安装在这些应用程序中的单点登录客户端,会重定向到单点登录服务器。不过此时单点登录服务器不再要求用户输入用户名和密码,而是自动寻找Cookie,根据Cookie中保存的信息,进行自动登录。登录之后,重定向回到用户指定的应用程序。

使用Cookie实现单点登录的原理图

图1使用Cookie实现单点登录的原理图

这样,就不再需要用户继续输入用户名和密码,从而实现了单点登录。采取这种方式建立单点登录体系,并没有通过http进行密码的传递(但是有用户名的传递),因此是十分安全的。

3 办公系统

3.1 系统结构传统的应用软件系统是由若干子系统组成,而每个独立子系统又是由若干业务模块组成。

而在基于面向构件开发的过程中,业务构件就对应着模块这个层次,业务构件是最大粒度的可复用构件单位。在面向构件的方法论中,要求对子系统按照业务构件的分割原则进行分割,使子系统由一个个相对独立自治的业务构件组装而成。

办公系统采用受控的自由流转形式,既避免了固定流转在适用对象上的局限性,又避免了自由流转的随意性。所谓受控的自由流转,是指对用户发送对象进行有限制的发送而进行的文件流转。通常情况下,用户问可以在一定范围内自由相互发送。特殊情况下,通过限制发送对象,系统不但广泛适用于各级各类大小部门办公需要,而且也确保了文件流转的严肃性。

系统以“角色”作为用户权限划分的依据,无需对每个用户单独设置操作权限,系统管理员只需对用户确定相应的角色,系统就自动完成了用户权限的设置系统可根据各部门的实际情况,灵活定义系统的组织机构结构,可适合各级各类企业的需要。

系统在缺省情况下设置一名系统管理员,负责系统数据和用户、权限、信息分类等数据的维护管理,也可以通过增设部门管理员,负责本部门的维护管理。系统通过采用集中与分散相结合的维护管理机制,不但减轻了系统管理员的工作量,而且确保了各类数据维护管理方便高效。

3.2 主要功能系统由“公文处理”、“辅助办公”、“会务管理”和“资料查询”等四个子系统组成。

3.2.1 公文处理子系统包括公文拟制、公文流转、公文签批、公文归档、公文借阅等功能,可提供全套公文模板,还可以根据本部门业务工作需要,添加白定义的公文模板:用户按照串行和并行两种方式自定义公文流程,并实时追踪公文的去向,查阅公文状态(已阅、待阅、流转)和批示内容;领导可通过电脑手写屏签批文件,或通过WORD文档编辑软件修改文件:系统实现痕迹保留和真迹识别功能,确保电子公文的真实性;领导审批后的公文直接流转至文件保管室,在完成文件编号的同时,将公文直接归档:用户通过系统向文件保管室提出借阅文件申请,保管员根据文件借阅权限和相关管理规定,办理借阅申请,并设定借阅文件的归还日期。

其中文件的状态由数据库字段属性来表示,属性包括公文类型、当前状态等,并有宇段反映阅办人办理情况、日期、数字签名及该文件是否办理完成的标志;文件装入自行开发的上传、入库、再现软件直接在用户终端使用,或由用户按照B/S架构,XML方式,或系统提供WORD—WEB工具,均可根据系统集成要求编程实现。

3.2.2 资料查询子系统本系统根据企业规定,个人办公电脑不存储信息,而是在信息中心服务器上建立网上资料室,分为部门、科室和个人资料室三个层次,区分使用人员类别,设定不同的访问权限,主要包括公共资料、业务资料和个人资料等三个方面处理模块,并提供信息数据的全文检索和综合查询模块。

公共资料主要包括政策法规等公开资料;业务资料主要包括各部门业务工作相关的法规和文件资料等;个人资料主要包括个人工作所需的各种图片、文档、表格等资料信息。按照使用人员的类别,设定不同的访问权限,提供系统内所有信息数据的全文检索和智能查询功能,方便用户快速、准确地查找信息资料。

3.2.3 辅助办公主要包括业务办理、协同办公、个人工具三个模块。

3.2.4 会议管理会议管理系统用于辅助用户策划、筹备、组织各种会议和管理各种会议文档,主要包括:会议呈批、会议通知、会议组织、会议信息管理、房间分配、会场排座、照相排座、餐桌划分、接收站安排和会议文档管理等九个模块。本文就不一一阐述了。

4 小结

基于SOA(Service—Oriented Architecture)即面向服务架构研发系统,避免了“紧偶合”、“封闭式”、“确定性功能”等不利系统发展因素,具有灵活多变的特性,扩展性、移植性好,且充分利用丰富的第三方控件,加快应用系统开发速度,缩短研发进程。本文简要介绍了基于SOA架构为特定企业研发整合应用系统的部分设计及关键技术,并采用截图方式直观的展现了图形化编程的过程及优势所在,为系统研发人员提供了又一个选择。

本文所涉及项目乃适用于特定企业模式的整合系统,已在企业中大范围应用,并取得一定管理效益。目前在特定企业中尚无同类规模、技术先进、功能完善的整合应用系统,对行业发展起到一定的启示作用。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐