用于支撑多个异构系统交互的系统的制作方法

文档序号:6540077阅读:153来源:国知局
用于支撑多个异构系统交互的系统的制作方法
【专利摘要】本发明公开了一种用于支撑多个异构系统交互的系统,包括统一身份认证子系统、企业服务总线技术子系统,统一身份认证子系统包括账户信息预存模块,用于预存用户通过注册或分配后形成的账户信息;权限分配模块,用于为账户信息分配相应的权限;单点登录认证模块,用于接收用户输入的账户信息并将输入的帐户信息与预存的帐户信息进行匹配认证;企业服务总线技术子系统包括预先根据异构系统进行注册的入站服务接口和出站服务接口,入站服务接口根据当前调用的异构系统的请求消息内容,对消息进行格式转换以转换为被调用的异构系统的数据格式,并根据调度路由规则发送至相应的为被调用的异构系统注册的出站服务接口,出站服务接口返回调用的消息内容。
【专利说明】用于支撑多个异构系统交互的系统
【技术领域】
[0001]本发明涉及一种用于支撑多个异构系统交互的系统。
【背景技术】
[0002]伴随着计算机信息化普及的潮流,企业内部也不同程度的构建了一些必要的软件系统。由于计算机软件技术的发展也是日新月异,同时企业内部也因为建设规划投资进度等因素的制约,由不同厂商或者不同技术架构在不同的时间段构建了相关的软件系统。因此当业务软件系统的数量级不断扩张后,势必会积累演化出以下一些问题:
[0003]一、账户管理及使用带来的问题:为了保护数据信息的安全,软件系统往往都需要可靠的账户管理措施。这样不同的软件系统拥有各自独立的账户系统,对于企业的信息管理员,需要管理多套账户而耗费很多精力。实体内部的软件用户也因为需要记住多个账户而困惑。
[0004]二、业务交互和信息共享方面的问题:对于一个企业,往往会根据具体业务划分,划分为不同的部分来负责更专业的细分业务,因此软件系统也会为更符合具体业务而定制开发,这样,也势必会存在很多相对独立的用于处理不同业务的软件系统。这样,当需要协作处理,或信息共享时,往往会按需求点对点的暴露一些接口来交互,这样对管理和维护将变得极为困难。
[0005]三、信息繁杂不能快速切入的问题:对于企业内部的人员,其所从事的业务,根据分工不同,往往可能会涉及在不同的软件业务系统当中在大量的信息流中去寻找并处理相关的事务,造成不必要的工作效率损失,也即所谓的“信息孤岛”。

【发明内容】

[0006]本发明主要解决的技术问题是提供一种用于支撑多个异构系统交互的系统,可以通过一次登录,多异构系统集成及交互访问。
[0007]为解决上述技术问题,本发明采用的一个技术方案是:提供一种用于支撑多个异构系统交互的系统,能够整合已有的多个异构系统及接入新的异构系统以及使用户能够快速便捷的访问多个异构系统,包括统一身份认证子系统、企业服务总线技术子系统,所述统一身份认证子系统包括:账户信息预存模块,用于预存用户通过注册或分配后形成的账户信息;权限分配模块,用于为注册或者分配后形成的账户信息分配相应的权限;单点登录认证模块,用于接收用户输入的账户信息并将输入的帐户信息与预存的帐户信息进行匹配认证;所述企业服务总线技术子系统包括:预先根据异构系统进行注册的入站服务接口和出站服务接口,所述入站服务接口用于根据当前调用的异构系统的请求消息内容,对消息进行格式转换以转换为被调用的异构系统的数据格式,将转换后的消息内容根据调度路由规则发送至相应的为被调用的异构系统注册的出站服务接口,所述出站服务接口用于对被调用的异构系统的消息内容进行格式转换,并将转换后的消息内容进行格式转换后根据调用路由规则发送至相应的入站服务接口以返回调用的消息内容。[0008]其中,还包括:账户信息关联模块,用于使帐户信息预存模块预存的每一账户信息与每一异构系统中所存在的每一帐户信息进行匹配关联。
[0009]其中,还包括:第一判断模块,用于判断用户是否访问其中一异构系统;第二判断模块,用于当第一判断模块判断得到用户访问其中一异构系统后,判断用户的账户信息是否具有访问该异构系统的权限;处理模块,用于当第二判断模块判断得到用户的账户信息具有访问该异构系统的权限后,允许用户访问该异构系统;拒绝访问模块,用于当第二判断模块判断得到用户的账户信息不具有访问该异构系统的权限后,拒绝用户访问该异构系统。
[0010]其中,还包括:第三判断模块,用于判断用户是否访问或调用其中一异构系统的数据;所述入站服务接口,用于在第三判断模块判断得到用户需要访问或者调用其中一异构系统的数据时,根据当前调用的异构系统的请求消息内容,对消息进行格式转换以转换为被调用的异构系统的数据格式,将转换后的消息内容根据调度路由规则发送至相应的为被调用的异构系统注册的出站服务接口,所述出站服务接口对被调用的异构系统的消息内容进行格式转换,并将转换后的消息内容进行格式转换后根据调用路由规则发送至相应的入站服务接口以返回调用的消息内容。
[0011]其中,还包括:界面集成子系统,用于集成已有的异构系统以形成统一集成界面。
[0012]本发明的有益效果是:区别于现有技术的情况,本发明的用于支撑多个异构系统交互的系统,可以通过一次登录进行多异构系统访问,提高了业务交互和异构系统数据共享、并能通过界面集成使得不同的异构系统可以快速切入。
【专利附图】

【附图说明】
[0013]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0014]图1是本发明用于支撑多个异构系统交互的系统一实施例的方框图。
【具体实施方式】
[0015]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0016]在对实施例进行描述之前,需要对一些必要的术语进行解释。例如:
[0017]若本文中出现使用“第一”、“第二”等术语来描述各种元件,但是这些元件不应当由这些术语所限制。这些术语仅用来区分一个元件和另一个元件。因此,下文所讨论的“第一”元件也可以被称为“第二”元件而不偏离本发明的教导。应当理解的是,若提及一元件“连接”或者“联接”到另一元件时,其可以直接地连接或直接地联接到另一元件或者也可以存在中间元件。相反地,当提及一元件“直接地连接”或“直接地联接”到另一元件时,则不存在中间元件。[0018]在本文中出现的各种术语仅仅用于描述具体的实施方式的目的而无意作为对本发明的限定,除非上下文另外清楚地指出,否则单数形式意图也包括复数形式。
[0019]当在本说明书中使用术语“包括”和/或“包括有”时,这些术语指明了所述特征、整体、步骤、操作、元件和/或部件的存在,但是也不排除一个以上其他特征、整体、步骤、操作、元件、部件和/或其群组的存在和/或附加。
[0020]关于实施方式:
[0021]请参见图1,图1是本发明用于支撑多个异构系统交互的系统一实施例的方框图。本实施例的用于支撑多个异构系统交互的系统,能够整合已有的多个异构系统及接入新的异构系统以及使用户能够访问多个异构系统包括统一身份认证子系统1、企业服务总线(Enterprise Service Bus,ESB)技术子系统2。其中,所述统一身份认证子系统I包括:账户信息预存模块11,用于预存用户通过注册或分配后形成的账户信息;权限分配模块12,用于为注册或者分配后形成的账户信息分配相应的权限;单点登录认证模块13,用于接收用户输入的账户信息并将输入的帐户信息与预存的帐户信息进行匹配认证;所述企业服务总线技术子系统2包括:预先根据异构系统进行注册的入站服务接口 21和出站服务接口22,所述入站服务接口 21用于根据当前调用的异构系统的请求消息内容,对消息进行格式转换以转换为被调用的异构系统的数据格式,将转换后的消息内容根据调度路由规则发送至相应的为被调用的异构系统注册的出站服务接口 22,所述出站服务接口 22用于对被调用的异构系统的消息内容进行格式转换,并将转换后的消息内容进行格式转换后根据调用路由规则发送至相应的入站服务接口 21以返回调用的消息内容。
[0022]具体地,本用于支撑多个异构系统交互的系统本身作为一个独立部署的应用,以B/S模式开发,平台的人机交互及监控均可通过http (或https)通道访问。平台整体以SOA (Service-Oriented Architecture,面向服务的体系结构)理念设计规划并利用J2EE技术框架构建,综合运用了基于SOA架构、Spring MVC、Servlet规范、Hibernate数据持久化框架、基于耶鲁大学开源CAS的SSO定制化处理、基于JSR168的portal技术、XML, XLST和JSON数据交换、基于SOAP和REST的JAX-WS和JAX-RS的web服务、基于Beanshell或Groovy的脚本语言、基于Velocity的模板技术、基于ActiveMQ的JMS消息队列、基于JMX的配置和性能监视、关系型数据库及数据缓存技术、基于Extjs的富客户端技术提升平台人机交互的用户体验等技术。该系统中的各个子系统根据所面对的领域的问题,融合并可选的运用上述技术中的一项或多项来实现其功能,并按三个子系统的模块化划分,对外界提供了界面集成类接口,身份认证类接口,总线服务类接口。
[0023]在企业众多的业务软件系统中,为了保护业务数据的安全性,基本上都会对使用系统的用户进行账号管理,授权,可访问资源等安全规则配置。统一身份认证子系统I的目标就在于避免各个子系统都各自维护账户和授权管理,通过在中心平台的集中管理配置,确保使用系统的用户能够一次登录,不用再次登录即可访问他拥有权限的各个系统。另外,在企业实际的IT系统中,存在着统一身份认证子系统I建设之前就已经有的本身包含了账户权限管理的业务系统,和需要新待建的业务系统,统一身份认证子系统I也必须能够接入新的业务系统,同时也应当能够整合旧的业务系统。因此,WinPF-SSO统一身份认证子系统I基于解决上述问题并通过实现以下功能实现了统一身份认证的需求,其功能和特点为:单点登录和集中的账户管理、角色权限的集中配置&基于角色的访问控制(Role-BasedAccess Control, RBAC)、统一的资源管理配置、映射既有系统账户、身份认证信息的多管道存储:关系数据库及LDAP (Lightweight Directory Access Protocol,轻量目录访问协议)、账户敏感信息的安全传输http或https及各类加密措施、开放的API接口及和数据服务总线的有机整合。
[0024]该统一身份认证子系统I包括:账户信息预存模块11、权限分配模块12、单点登录认证模块13等。所述账户信息预存模块11用于预存用户通过注册或者分配后形成的账户信息,即每个企业的员工可以自己通过注册以形成账户信息或者通过管理员为每一用户分配账户信息,所述帐户信息至少包括帐户名和密码,注册后的账户信息预存至该账户信息预存模块11中。
[0025]权限分配模块12用于对账户信息预存模块11中的帐户信息分配相应的权限,这里的权限是指访问每一个异构系统的权限。例如某企业的异构系统有多个,例如OA系统、财务系统、采购系统、销售系统、招商系统等等,每一个或者每几个系统的数据结构均不相同,那么,此处的权限分配模块12即是指为每一个注册或分配的帐户信息分配能够访问某些系统的权限,例如企业的人事部员工李某,为其分配的权限为0A(Office Automation,办公自动化)系统、招商系统或其下特定的所需操作功能模块,那么,李某的帐户信息能够访问的异构系统即为OA系统和财务系统;又例如企业的老板,为其分配的权限为所有的异构系统,那么,该企业的老板即能够访问所有的系统。被分配后权限的账户信息同样被存在在帐户信息预存模块中。
[0026]单点登录认证模块13,用于实时地接收用户输入的帐户信息并将输入的帐户信息与帐户信息预存模块中预存的账户信息进行匹配。当匹配成功后,则允许用户进行访问为该用户分配的权限所对应的异构系统的功能模块。例如人事部的李某进行登录之后,若认证登录成功,则允许李某访问OA系统和招商系统。
[0027]本实施例的统一身份认证子系统I还包括帐户信息关联模块(图未示出),用于使帐户信息预存模块预存的每一帐户信息与已有的每一异构系统所存在的每一帐户信息进行匹配关联。例如又有的系统有OA系统、财务系统、采购系统、销售系统、招商系统等等,那么,在没有设立本用于支撑多个异构系统交互的系统之前,企业的员工需要对应每一系统进行账户注册和登录,才能独立的查看每一系统的数据以及处理工作,那么,该帐户信息关联模块,即是指将帐户信息预存模块中新分配或者注册的帐户与之前已存在的每一系统的每一帐户进行一一关联(手动或批量方式),如此,即可通过新注册的帐户信息访问此前的异构系统。例如人事部李某,新注册的统一帐户为A,而他在OA系统中的帐户为Al,在招商系统中的帐户为A2,那么,该帐户关联模块通过关联映射,将A关联或者映射到Al和A2中,如此,即可通过登录A访问OA系统或者招商系统,避免了像传统中需要各自登录才能访问某个系统的缺陷。
[0028]当然,在其他的实施例中,例如不存在已有的异构数据的情况下,即用于支撑多个异构系统次第的系统和其他系统如OA系统、招商系统、采购系统、销售系统等等同时建立的情况下,只需要统一分配或者注册一次账户即可,不需要帐户信息关联模块进行关联。
[0029]进一步地,本用于支撑多个异构系统交互的系统还包括第一判断模块3和第二判断模块4、处理模块5以及拒绝访问模块6。其中:
[0030]所述第一判断模块3用于在用户进行登录之后,判断用户是否访问了其中一异构系统,例如当人事部的李某进行登录之后,判断李某是否访问了 OA系统;
[0031]所述第二判断模块4,用于在第一判断模块3判断得到用户访问了其中一异构系统后,判断用户的帐户信息是否具有访问该异构系统的权限,例如在判断得到人事部的李某访问OA系统后,判断李某是不是具有访问该OA系统的权限,具体判断方法可以查询帐户信息预存模块中该李某的帐户信息是否被分配了访问OA系统的权限,若有分配,则认为李某具有访问该异构系统的权限;
[0032]处理模块5,用于当第二判断模块4判断得到用户的帐户信息具有访问该异构系统的权限后,允许用户访问该异构系统,例如当判断得到李某具有访问该OA系统的权限后,允许李某访问该OA系统;
[0033]拒绝访问模块6,用于当第二判断模块4判断得到用户的帐户信息不具有访问该异构系统的权限后,拒绝用户访问该异构系统,例如当判断得到李某不具有访问该OA系统的权限后,拒绝李某访问该OA系统。
[0034]进一步地,还包括第三判断模块7,用于判断用户是否访问或者调用其中一异构系统的数据,本第三判断模块7主要用于在用户已经访问某一异构系统的情况下,用于判断用户是否调用另一异构系统的数据。如果第三判断模块7判断得到用户需要访问或者调用另一异构系统的数据时,则服务总线子系统的入站服务接口 21根据用户当前调用的异构系统的请求消息内容,对消息进行格式转换以转换为被调用的异构系统的数据格式,将转换后的消息内容根据调度路由规则发送至相应的为被调用的异构系统注册的出站服务接口 22,所述出站服务接口 22对被调用的异构系统的消息内容进行格式转换,并将转换后的消息内容进行格式转换后根据调用路由规则发送至相应的入站服务接口 21以返回调用的消息内容。例如:当李某访问OA系统后,他需要在OA系统调用或者访问招商系统的数据,那么,第三判断模块7可通过他是否点击某个访问功能模块或者其他请求进行判断他需要访问招商系统的数据,那么服务总线子系统的入站服务接口 21即可通过该请求所携带的请求消息内容进行格式转换等等再发送至出站服务接口 22,出站服务接口 22再根据招商系统返回的数据进行格式转换等发送至入站服务接口 21以使得李某成功调用或者访问到招商系统的数据。在本部分中,用户在一个系统中需要通过该系统调用另一个系统的数据时,需要对该用户是否具有访问被调用系统的权限,若具有权限时,入站服务接口 21才对请求进行消息转换等一系列的动作。
[0035]该企业服务总线子系统2的主要用途如下:随着企业的发展,企业会根据业务及管理的需要,建设各种软件系统来进行信息化的建设,这些系统往往都是在不同阶段用不同的软件技术架构进行构建来满足特定部门或业务的需要,在涉及到多部门多业务交互的情况下,通常采用的办法是,在相应应用系统中开发并开放服务接口,调用其他系统开放的服务接口来进行各个系统间的交互,这样,随着企业信息化建设的不断深入,接口的数量及管理,都将非常耗费人力及成本。企业服务总线子系统2的目标就在于构建一个统一的中心服务平台,集中管理,开发,发布,配置各个应用系统间的服务接口,各个系统的交互不在是点对点的互相开放或者调用服务接口,而是通过企业服务总线子系统2的调度来完成应用系统间的交互,体现了 SOA架构理念的特性。企业服务总线子系统2的目标就是解决上述问题并通过实现以下功能实现了服务集中管理配置及调度的需求,其功能和特点为:紧紧贴合面向服务SOA架构实现、与操作系统和编程语言无关的服务接口配置管理、支持直接调用转发或消息传递(同步、异步、点对点、发布-订阅)、基于内容等多种方式的智能服务接口调用的路由、消息内容的转换功能、基于WinPF-SSO的认证、授权的安全控制集中、灵活简便的服务接口配置管理功能。该子系统基于J2EE技术架构整体设计开发,可支持和开发配置的服务接口类型有基于SOAP的webservice服务接口、基于REST的Restfulwebservice服务接口、基于JMS的消息服务接口、普通的Http服务接口,极大的满足了中小型企业IT实际状况及扩展性的需求,满足各业务系统间的接口交互。
[0036]在该企业服务子系统中,将对入站服务接口 21的调用(服务的调用),封装为消息,消息以XML形式传递交换,对于消息的转换,平台提供相关的页面定义基于XLST的转换规贝U(以xml格式存储),对于消息的路由,平台提供相关的页面定义路由转发规则(以xml格式存储)。同时,对于消息的转换和路由,还提供编程接口(基于beanshell或groovy脚本语言),扩展开发后在平台的管理页面进行配置。企业的管理员可以对该企业服务子系统进行管理,例如对入站服务接口 21和出站服务接口 22的注册和配置等等。
[0037]在本实施例中,还包括界面集成子系统,界面集成子系统主要用于集成已有的异构系统以形成统一集成界面。该界面集成子系统的主要功能即为用户提供一种方便、快捷、简单的访问通道,已有的异构系统的功能均通过该界面集成子系统进行集成,用户可以通过该界面集成子系统进行单点登录、访问某一个或者多个异构系统,通过某一个异构系统调用另一个异构系统的数据等等,通过一次注册、一次登录,即可对已有的多个异构系统进行访问。
[0038]具体地,界面集成子系统所要解决的问题是:将各个应用系统的功能操作统一的管理配置,使得具体用户根据其在统一身份认证子系统I中的权限可自行配置定制自己需要的功能操作,同时,集成公共的协同办公的消息通知等公用模块,展现在集中的门户界面中,从而使得用户能够非常的方便使用与其相关的业务功能,无需在众多的系统中来回切换。这样,界面集成子系统就达到了信息聚合,消除信息孤岛的作用,有效提高企业人员的工作效率。WinPF-PORTAL界面集成子系统正是通过信息聚合,应用集成的思路设计开发而成,并能够有效集中的为用户展示可自定义的协同办公门户界面。其功能和特点为:基于门户portal技术标准设计实现、侧重于信息聚合和应用集成、内置公共功能操作可以自由定义扩展、使用富客户端技术,界面美观,支持换肤、用户可自定义所需功能操作、内置单点登录或集成Win_SS0、细粒度的权限控制(包括应用,模块,功能菜单链接等)、提供通用接口按需开发portlet,满足灵活的定制需求。界面集成子系统是以J2ee技术为基础构建,采用JSR168规范而实现的Portal门户系统,融合ajax技术与Spring MVC技术,提供了灵活而丰富的个性化和管理定制功能。Win_P0RTAL通过内置的安全认证方式或来自Win_SS0提供的安全认证,以基于角色访问控制的权限模型进行界面功能操作的访问控制。允许管理员在运行态对Portal进行定制,而无需重启甚至编码。用户可通过内建的换肤机制实现自定义皮肤。开发者通过对通用portlet接口的实现,包装相关应用系统为受门户系统可控,管理员在门户管理系统中对包装了应用系统的portlet配置后,应用系统即接入门户系统,用户即可在自己的门户界面中,定制相关的应用系统的功能,从而集成到自身的门户界面。
[0039]本发明实施例,通过一次登录、多异构系统访问,提高了业务交互和异构系统数据共享、可以使得不同的异构系统可以快速切入等。
[0040]以上仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.一种用于支撑多个异构系统交互的系统,能够整合已有的多个异构系统及接入新的异构系统以及使用户能够访问多个异构系统,其特征在于,包括统一身份认证子系统、企业服务总线技术子系统,所述统一身份认证子系统包括: 账户信息预存模块,用于预存用户通过注册或分配后形成的账户信息; 权限分配模块,用于为注册或者分配后形成的账户信息分配相应的权限; 单点登录认证模块,用于接收用户输入的账户信息并将输入的帐户信息与预存的帐户信息进行匹配认证; 所述企业服务总线技术子系统包括:预先根据异构系统进行注册的入站服务接口和出站服务接口,所述入站服务接口用于根据当前调用的异构系统的请求消息内容,对消息进行格式转换以转换为被调用的异构系统的数据格式,将转换后的消息内容根据调度路由规则发送至相应的为被调用的异构系统注册的出站服务接口,所述出站服务接口用于对被调用的异构系统的消息内容进行格式转换,并将转换后的消息内容进行格式转换后根据调用路由规则发送至相应的入站服务接口以返回调用的消息内容。
2.如权利要求1所述的用于支撑多个异构系统交互的系统,其特征在于,还包括: 账户信息关联模块,用于使帐户信息预存模块预存的每一账户信息与每一异构系统中所存在的每一帐户信息进行匹配关联。
3.如权利要求2所述的用于支撑多个异构系统交互的系统,其特征在于,还包括: 第一判断模块,用于判断用户是否访问其中一异构系统; 第二判断模块,用于当第一判断模块判断得到用户访问其中一异构系统后,判断用户的账户信息是否具有访问该异构系统的权限; 处理模块,用于当第二判断模块判断得到用户的账户信息具有访问该异构系统的权限后,允许用户访问该异构系统; 拒绝访问模块,用于当第二判断模块判断得到用户的账户信息不具有访问该异构系统的权限后,拒绝用户访问该异构系统。
4.如权利要求3所述的用于支撑多个异构系统交互的系统,其特征在于,还包括: 第三判断模块,用于判断用户是否访问或调用其中一异构系统的数据; 所述入站服务接口,用于在第三判断模块判断得到用户需要访问或者调用其中一异构系统的数据时,根据当前调用的异构系统的请求消息内容,对消息进行格式转换以转换为被调用的异构系统的数据格式,将转换后的消息内容根据调度路由规则发送至相应的为被调用的异构系统注册的出站服务接口,所述出站服务接口对被调用的异构系统的消息内容进行格式转换,并将转换后的消息内容进行格式转换后根据调用路由规则发送至相应的入站服务接口以返回调用的消息内容。
5.如权利要求4所述的用于支撑多个异构系统交互的系统,其特征在于,还包括:界面集成子系统,用于集成已有的异构系统以形成统一集成界面。
【文档编号】G06Q10/06GK103839138SQ201410087683
【公开日】2014年6月4日 申请日期:2014年3月8日 优先权日:2014年3月8日
【发明者】刘文涛, 孙学昆, 吴昊 申请人:成都文昊科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1