一种统一管理用户信息的方法及其装置的制作方法

文档序号:6460148阅读:158来源:国知局
专利名称:一种统一管理用户信息的方法及其装置的制作方法
技术领域
本发明涉及用户信息管理领域,尤其涉及多应用系统用户信息的统一管 理技术。
背景技术
随着信息技术和网络技术的迅猛发展,企业内部的应用系统越来越多。 比如在媒体行业,常见的应用系统就有采编应用系统、排版应用系统、印刷 应用系统、广告管理应用系统、财务应用系统、办4^自动化应用系统、决策 支持应用系统、客户关系管理应用系统和网站发布应用系统等。由于这些应 用系统互相独立,用户在使用每个应用系统之前都必须按照相应的应用系统 身份进行登录,因此用户必须记住每一个应用系统的用户名和密码,这给用 户带来了不少麻烦。特别是随着应用系统的增多,出错的可能性就会增加。
一4殳来说,每个应用系统都拥有独立的用户信息管理功能,用户信息的 格式、命名与存储方式也多种多样。当用户需要使用多个应用系统时就会带 来用户信息同步问题。用户信息同步会增加应用系统的复杂性,增加管理的 成本。
例如,用户X需要同时4吏用A应用系统与B应用系统,就必须在A应用 系统与B应用系统中都创建用户X,这样在A、 B任一应用系统中用户X的 信息更改后就必须同步至另一应用系统。如果用户X需要同时使用IO个应用 应用系统,用户信息在任何一个应用系统中做出更改后就必须同步至其他9 个应用系统。在对用户信息进行同步时如果应用系统出现意外,还要保证数 据的完整性,因而同步用户信息的程序可能会非常复杂。在现有技术中通过建立统一用户管理系统(UUMS)来同步用户信息。 UUMS统一存储所有应用系统的用户信息,应用系统对用户的相关操作全部 通过UUMS完成,而授权等操作则由各应用系统完成,即统一存储、分布授 权。UUMS应具备以下基本功能
1、 用户信息规范命名、统一存储,用户ID全局惟一。用户ID犹如身份 证,区分和标识了不同的个体。
2、 UUMS向各应用系统提供用户属性列表,如姓名、电话、地址、邮件 等属性,各应用系统可以选择本应用系统所需要的部分或全部属性。
3、 应用系统对用户基本信息的增加、修改、删除和查询等请求由UUMS 处理。
4、 应用系统保留用户管理功能,如用户分组、用户授权等功能。 UUMS采用SSO ( Single Sign-on,单点登录)技术方便用户访问多个应
用系统,用户只需在登录时进行一次注册,就可以在多个应用系统间自由穿 梭,不必重复输入用户名和密码来确定身份。
目前业界已有很多产品支持SSO的UUMS,如IBM的WebSphere和BEA 的WebLogic。但是这些商业软件的价格比较昂贵,而且对应用系统也有要求, 一般都要对要集成的应用系统做些改造,如在要集成的应用系统上安装 AGENT软件。

发明内容
本发明实施例提供了 一种统一管理用户信息的方法,用以实现低成本、 方便的统一管理用户信息。
本发明实施例提供了 一种统一管理用户信息的装置,用以实现低成本、 方便的统一管理用户信息。
一种统一管理用户信息的方法,包括如下步骤
用于管理用户信息的应用程序获得更改的用户信息并启动用于管理用户
5信息的事务;
所述事务才艮据所述更改的用户信息,从操作系统中调用每一个应用系统
用于管理用户信息的COM+组件;
每一个应用系统的用户信息管理COM+组件被调用后,分别根据所述更 改的用户信息更改对应应用系统的用户信息。
一种统一管理用户信息的装置,包括
更改信息获得模块,用于获得更改的用户信息;
事务调用组件冲莫块用于启动管理用户信息的事务,所述事务才艮据所述更 改的用户信息,乂人才喿作系统中调用每一个应用系统的用户信息管理COM+组 件;所述每一个应用系统的用户信息管理COM+组件被调用后,分别根据所 述更改的用户信息更改对应应用系统的用户信息。
本发明实施例由于通过COM+组件来实现对各应用系统用户信息的改 变,并通过在同一事务中调用这些COM+组件,利用事务的原子性以及一致 性的属性,从而保证了通过调用COM+组件改变各应用系统用户信息的一致 性,实现了各应用系统用户信息的统一管理。由于避免了使用昂贵的UUMS, 所以降低了用户信息统一管理的成本;而且不用对各应用系统进行改造,从 而可以更方便地实现用户信息统一管理。


图la至图lc为本发明实施例的多应用系统用户信息数据库示意图2为本发明实施例的一种生成统一管理用户信息应用程序的方法流程
图3为本发明实施例的统一管理用户信息的方法流程图; 图4为本发明实施例的统一管理用户信息的装置结构图。
具体实施例方式
6本发明实施例通过在各个应用系统的COM (Component Object Model, 组件对象模型)+组件中实现对各应用系统的用户信息的改变,通过在一事务 中调用这些COM+组件,利用事务的原子性以及一致性的属性,从而保证了 通过调用COM+组件改变各应用系统用户信息的一致性,实现了各应用系统 用户信息的统一管理。
这里先介绍有关COM+组件及事务的概念。微软提出了 COM( Component ObjectModel,组件对象模型)概念,作为构建应用程序的另一种方法。 一般 的讲, 一个应用程序是由单个的二进制文件组成。如果需要对应用程序做一 些改进,就要修改该应用程序的源代码,然后编译,生成新的文件,取代原 来的文件。现在,我们用一种全新的角度来看问题把原先一整个可执行二 进制文件(EXE)文件,分割成功能不同,但相对独立的几个组件,把他们 拼装起来,组成程序,组成软件。在该应用程序发布以后,如果需要对应用 程序的某个部分进行修改,只要替换有问题的或是需要升级的组件就可以了 。 甚至还可以做到在不影响程序正常运行的情况下替换其中的组件。
COM是一种说明如何建立可动态互变组件的规范,此规范提供了为保证 能够互操作,客户和组件应遵循的一些二进制和网络标准。通过这种标准可 以在任意两个组件之间进行通信而不用考虑其所处的操作环境是否相同、使 用的开发语言是否一致以及是否运行于同 一 台计算机。
COM+并不是COM的简单升级,COM+的底层结构仍然以COM为基础, 它几乎包容了 COM的所有内容,它把COM组件软件提升到应用层而不再是 底层的软件结构,它通过操作系统的各种支持,使组件对象模型建立在应用 层上,把所有组件的底层细节留给操作系统,因此,COM+与操作系统的结合 更加紧密。
为了完成对数据的操作,经常要求并发访问在多个组件之间共享的数据。 在这种情况,可能要求在(分布式)资源上的一组操作被当作一个工作单元 (unit)。在一个工作单元中,操作的所有部分一起成功或失败并恢复。通过一
7组分布式的、访问多个资源的数据的组件实现一个工作单元,该工作单元对(分 布式)资源的数据操作要么全部成功,要么全部失败。在工作单元失败的情况 下,工作单元要把所有资源的数据状态返回到以前的状态。
一个事务在一个工作单元中维护凄"居完整性,具有下列属性
1、 原子性(ATOMICITY): —个事务要被完全的无二义性的估支完或撤消。 在任何操作出现一个错误的情况下,构成事务的所有操作的效果必须被撤消, 数据应被恢复到以前的状态。
2、 一致性(CONSISTENCY): —个事务应该保护所有定义在数据上的不 变的属性(例如完整性约束)。在完成了一个成功的事务时,f史据应处于一致 的状态。换句话说, 一个事务应该把系统从一个一致状态转换到另一个一致 状态。举个例子,在关系数据库的情况下, 一个一致的事务将保护定义在数 据上的所有完整性约束。
3、 隔离性(ISOLATION):在同一个环境中可能有多个事务并发执行,而 每个事务都应表现为独立执行。
4、 持久性(DURABILITY): —个被完成的事务的效果应该是持久的。 本发明实施例正是利用了事务的上述属性,使得在操作、管理多应用系
统用户信息时,保持用户信息的一致性。
作li殳用户4吏用三个应用系统A、 B、 C应用系统。在这三个应用系统中, 用户信息是一样的。那么,当改变其中一个应用系统中的用户信息的时候, 还需要对另外两个应用系统中的用户信息同步改变,如图la至图lc所示
应用系统A中具有用户信息数据库A用以保存应用系统A的用户信息, 其中可以包括多个用户的用户信息。比如,John、 Tom等用户的用户信息。 而这些用户信息还可以包括用户名、密码等。
同样,在应用系统B中具有用户信息数据库B用以保存应用系统B的用 户信息;在应用系统C中具有用户信息数据库C用以保存应用系统C的用户 信息。
8下面以同步A、 B、 C应用系统中的用户信息为例,来描述本发明实施例
的技术方案。
本发明实施例提供了 一种生成统一管理用户信息应用程序的方法,流程
图如图2所示,具体包括如下步骤
步骤S201:对应每个应用系统定义一个COM+组件,用于管理对应应用 系统的用户信息。
每个具有用户信息的应用系统,在应用系统的用户信息数据库中保存的 用户信息是一致的。对应每个应用系统都定义一个COM+组件——用户信息 管理COM+组件。每个定义的COM+组件用以实现对相应应用系统的用户信 息进行操作。这些操作可以包括增力。、修改或者删除用户信息。比如,COM+ 组件可以在对应的应用系统的用户信息数据库中增加用户"Sam"以及"Sam" 用户的密码"000";或者,COM+组件可以将对应的应用系统的用户信息邀:据 库中的用户"John"的密码修改为"333"。由于实现的方法为本领域技术人员 所熟知,所以此处不赘述实现每个COM+组件对相应应用系统的用户信息数 据库中的用户信息的操作的具体编程方法。
在具体实施的时候,本领域技术人员可以有多种技术手段来实现用户信 息管理COM+组件对相应应用系统的用户信息的操作。其中,作为较优的一 种方法是,可以先定义一个对于所有应用系统的用户信息数据库通用的用户 信息管理接口的类。该用户信息管理接口类用以为继承了该用户信息管理接 口类的COM+组件提供接收更改的用户信息的接口。可以实现对用户信息数 据库中的用户信息的一些基本操作,如增加、修改或者删除用户信息。由于 每个定义的COM+组件在继承了该用户信息管理接口类,所以具有了相同的 4妄收更改的用户信息的4妄口 ,事务通过这些COM+组件的4妄口可以统一向 COM+组件传入更改的用户信息。COM+组件再根据传入的更改的用户信息对 相应的应用系统的用户信息数据库中的用户信息进行更改操作。比如,向这 些COM+组件传入字符串型参数的更改的用户信息"增加,用户AA,密码
9555"。则继承了用户信息管理接口类的COM+组件可以统一根据接口传入的 参数进行相应的增加用户的操作。
步骤S202:将所有定义的COM+组件注册到操:作应用系统。 将这些用户信息管理COM+组件注册到^:作应用系统后,才能调用这些 定义的用户信息管理COM+组件。注册的方法为本领域技术人员所熟知,既 可以是通过手动输入命令行注册用户信息管理COM+组件,也可以是通过程 序调用脚本的方式来进行注册。
步骤S203:在一事务中调用所有的用户信息管理COM+组件。 在一个事务中,通过参数调用所有的用户信息管理COM+组件,使得所 有的用户信息管理COM+组件对其相应的应用系统的用户信息数据库中的用 户信息作同样操作。比如,当需要针对A、B、C应用系统修改其中用户"Tom" 的密码信息为"999",则在事务中统一调用COM+组件,使得A、 B、 C应用 系统相对应的COM+组件都进行修改用户信息的操作。当然,使用户信息管 理COM+组件进行修改用户信息的操作是通过向用户信息管理COM+组件传 入参数来使得用户信息管理COM+组件可以根据传入的参数来具体决定执行 什么操作,以及对哪个用户进行操作,以及具体更改的用户信息为什么。由 于向用户信息管理COM+组件传入参数,并调用用户信息管理COM+组件使 之完成对相应应用系统的用户信息数据库中的用户信息的操作为本领域技术 人员所熟知,所以此处不再赘述。
由于,前述介绍的事务所具有的原子性以及一致性的属性,如果在执行 过程中,有一个用户信息管理COM+组件对其对应应用系统的用户信息数据 库中的用户信息操作失败,那么,事务将把所有用户信息管理COM+组件对 应应用系统的用户信息数据库中的用户信息恢复为修改前的用户信息。只有 在事务对所有用户信息管理COM+组件的修改用户信息数据库中的用户信息 的操作都成功的时候,所有应用系统的用户信息数据库中的用户信息才会被 更改。这样就保证了在修改用户信息的过程中,所有应用系统的用户信息数据库中的用户信息都一致被修改,它们的修改都同步——要么都修改成功, 要么都修改失败。
步骤S204:将上述步骤S201中定义的各COM+组件以及执行上述步骤
S202、步骤S203操作的程序封装起来,生成统一管理用户信息应用程序。
本发明实施例提供了一种统一管理用户信息的方法,如图3所示,包括 如下步骤
步骤S301:获得更改的用户信息。
当用户需要更改应用系统的用户信息时,比如,需要将A、 B、 C应用系 统中的用户"Tom"的密码信息更改为"999",统一管理用户信息应用程序需 要获得的更改的用户信息包括更改操作为修改用户密码,更改的用户为 "Tom",更改的密码为"999"。
步骤S302:启动用于管理用户信息的事务,该事务根据更改的用户信息 统一调用对应每个应用系统定义的用户信息管理COM+组件。
统一管理用户信息应用程序启动用于管理用户信息的事务,该事务根据 所述更改的用户信息统一调用对应每个具有用户信息的应用系统定义的用户 信息管理COM+组件。如前述步骤S201所述,对应每个具有用户信息的应用 系统都定义了 一个COM+组件——用户信息管理COM+组件,每个COM+组 件用以根据所述更改的用户信息对相应应用系统的用户信息进行更改。由于 用户信息管理COM+组件实现了对相应应用系统的用户信息的操作,这些操 作包括增加、删除或者》务改用户信息,所以用户信息管理COM+组件可以 根据获得的更改的用户信息作出相应的操作。比如,获得的更改的用户信息 包括更改操作为修改用户密码,更改的用户为"Tom",更改的密码为"999", 则每个用户信息管理COM+组件执行对相应应用系统的用户信息的i參改操 作,并具体的将"Tom"用户的密码修改为"999"。
或者获得的更改的用户信息为增加新用户"Sam", "Sam"的密码为 "000",则每个用户信息管理COM+组件执行对相应应用系统的用户信息的
ii增加用户操作,并具体的增加用户"Sam"及其密码"000"。
具体的,实现用户信息管理COM+组件根据获得的更改的用户信息对相 应应用系统的用户信息作出相应的更改操作,可以采用一个较优的方法。先 定义一个对于所有应用系统的用户信息数据库通用的用户信息管理接口的 类。该用户信息管理接口类用以为继承了该用户信息管理接口类的COM+组 件提供接收更改的用户信息的接口 。可以实现对用户信息凝:据库中的用户信 息的一些基本操作,如增加、修改或者删除用户信息。由于每个定义的COM十 组件继承了该用户信息管理接口类,所以具有了相同的接收更改的用户信息 的接口,事务通过这些COM+组件的接口可以统一向COM+组件传入更改的 用户信息。COM+组件再^4t传入的更改的用户信息对相应的应用系统的用户 信息数据库中的用户信息进行更改操作。
由于在统一调用过程中,事务具有的原子性以及一致性的属性,所以所 有用户信息管理COM+组件的操作要么全部成功,要么全部失败,保证了用 户信息的更改的一致性。
在调用用户信息管理COM+組件前,这些COM+组件需要预先被注册到 操作系统中。注册的方法既可以是通过手动输入命令行注册用户信息管理 COM+组件,也可以是通过程序调用脚本的方式来进行注册。
如图4所示,本发明实施例还提供一种统一管理用户信息的装置,包括 更改信息获得模块401、事务调用组件模块403。
更改信息获得模块401,用于获得更改的用户信息。
事务调用组件模块403,用于启动事务,在一个事务中根据所述更改的用 户信息统一调用对应每个具有用户信息的应用系统定义的用户信息管理 COM+组件。
对应每个具有用户信息的应用系统都定义了 一个用户信息管理COM+组 件,该COM+组件用以实现根据所述更改的用户信息对相应应用系统的用户 信息进行更改。由于用户信息管理COM+组件实现了对相应应用系统的用户
12信息进行操作,包括增加、删除或者修改用户信息的操作,所以用户信息
管理COM+组件可以根据获得的更改的用户信息作出相应的操作。
具体的,实现用户信息管理COM+组件根据获得的更改的用户信息对相 应应用系统的用户信息作出相应的更改操作,可以采用一个较优的方法。先 定义一个对于所有应用系统的用户信息数据库通用的用户信息管理接口的 类。该用户信息管理接口类用以提供对所述应用系统的用户信息操作的接口 。 每个定义的COM+组件在继承了该用户信息管理接口类后,通过继承的用户 信息管理接口类再对相应的应用系统的用户信息数据库中的用户信息进行操 作。这样,通过这个用户信息管理接口类可以方便的统一调用每个用户信息 管理COM+组件。
在事务调用组件模块403中,包括
用于从4喿作系统中调用每一个应用系统用于管理用户信息的COM+组件 的单元。
进一步,还包括
用于当至少一个用户信息管理COM+组件更改对应应用系统的用户信息 的失败时,控制所有用户信息管理COM+组件将对应应用系统的用户信息恢 复为更改前用户信息的单元。
由于在统一调用过程中,事务具有原子性以及一致性的属性,所以所有 用户信息管理COM+组件的操作要么全部成功,要么全部失败,保证了用户 信息的更改的一致性。
由于上述的COM+组件在被调用以前,需要^1注册到:操作应用系统中, 注册的方法,既可以是通过手动输入命令行的方法来进行注册,也可以通过 程序调用脚本的方法来进行注册。
那么进一步,该统一管理用户信息的装置还可以包括
组件注册模块402,用于通过程序调用脚本将用户信息管理COM+组件注 册到操作应用系统中。在事务调用组件模块403调用各用户信息管理COM+
13组件之前,这些COM+组件需要被注册到操作应用系统中。各用户信息管理
COM+组件被注册到操作应用系统后,事务调用组件模块403在调用这些 COM+组件之前就不用每次都进行注册了 。
本发明实施例由于通过COM+组件来实现对各应用系统用户信息的改 变,并通过在一事务中调用这些COM+组件,利用事务的原子性以及一致性 的属性,从而保证了通过调用COM+组件改变各应用系统用户信息的一致性, 实现了各应用系统用户信息的统一管理。由于相对于现有技术的用户信息统 一管理的方法,本发明实施例避免了使用昂贵的UUMS,所以降低了用户信 息统一管理的成本;并且本发明实施例的技术方案不用对各应用系统进行改 造,从而可以更方便地实现用户信息统一管理。
是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读 取存储介质中,如ROM/RAM、;兹碟、光盘等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普 通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润 饰,这些改进和润饰也应视为本发明的保护范围。
1权利要求
1、一种统一管理用户信息的方法,其特征在于,包括如下步骤用于管理用户信息的应用程序获得更改的用户信息并启动用于管理用户信息的事务;所述事务根据所述更改的用户信息,从操作系统中调用每一个应用系统用于管理用户信息的COM+组件;每一个应用系统的用户信息管理COM+组件被调用后,分别根据所述更改的用户信息更改对应应用系统的用户信息。
2、 如权利要求l所述的方法,其特征在于,所述每一个应用系统的用户信息管理COM+组件的用户信息管理接口类相同,所述用户信息管理接口类用于为用户信息管理COM+组件^是供接收所述更改的用户信息的接口 。
3、 如权利要求1或2所述的方法,其特征在于,所述每一个应用系统的用户信息管理COM+组件是通过输入命令行注册到所述操作系统中的。
4、 如权利要求1或2所述的方法,其特征在于,所述每一个应用系统的用户信息管理COM+组件是通过程序调用脚本的方式注册到所述操作系统中的。
5、 如权利要求l-4任一所述的方法,其特征在于,还包括如果有至少一个用户信息管理COM+组件更改对应应用系统的用户信息失败,则所述事务控制所有用户信息管理COM+组件将对应应用系统的用户信息恢复为更改前的用户信息。
6、 一种统一管理用户信息的装置,其特征在于,包括更改信息获得模块,用于获得更改的用户信息;事务调用组件模块,用于启动管理用户信息的事务,所述事务根据所述更改的用户信息,从操作系统中调用每一个应用系统的用户信息管理COM+组件;所述每一个应用系统的用户信息管理COM+组件被调用后,分别根据所述更改的用户信息更改对应应用系统的用户信息。2
7、 如权利要求6所述的装置,其特征在于,所述每一个用户信息管理COM+组件的用户信息管理接口类相同,所述统一用户信息管理接口类用于为各用户信息管理COM+组件提供接收所述更改的用户信息的统一接口 。
8、 如权利要求6或7所述的装置,其特征在于,还包括组件注册模块,用于将每一个用户信息管理COM+组件分别注册到操作应用系统中。
9、 如权利要求6或7所述的装置,其特征在于,所述事务调用组件模块,包括用于从操作系统中调用每一个应用系统用于管理用户信息的COM+组件的单元。
10、 如权利要求9所述的装置,其特征在于,所述事务调用组件模块,还包括用于当至少 一个用户信息管理COM+组件更改对应应用系统的用户信息的失败时,控制所有用户信息管理COM+组件将对应应用系统的用户信息恢复为更改前用户信息的单元。
全文摘要
本发明涉及用户信息管理领域,尤其涉及多系统用户信息的统一管理技术。一种统一管理用户信息的方法,包括步骤用于管理用户信息的应用程序获得更改的用户信息并启动用于管理用户信息的事务;事务根据所述更改的用户信息,从操作系统中调用每一个应用系统的COM+组件;每一个应用系统的COM+组件被调用后,分别根据所述更改的用户信息更改对应应用系统的用户信息。本发明还提供了一种统一管理用户信息装置。本发明由于通过COM+组件来实现对各系统用户信息的改变,并通过在同一事务中调用这些COM+组件,利用事务的原子性、一致性的属性,保证了通过COM+组件改变各系统用户信息的一致性,实现了低成本、方便的用户信息统一管理。
文档编号G06F9/46GK101488099SQ20081005622
公开日2009年7月22日 申请日期2008年1月15日 优先权日2008年1月15日
发明者日 刘, 刘百川, 彭灿明, 勇 胡, 赵洪岩, 陈春和 申请人:北大方正集团有限公司;北京北大方正电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1