首页> 中国专利> 对企业实体定义的注册中心的用户访问

对企业实体定义的注册中心的用户访问

摘要

本发明提供了用于例如UDDI注册中心的注册中心的设备、方法、以及计算机程序产品,以根据与企业服务定义相关联的许可细节,限制对包含在注册中心中的企业实体定义的访问。企业实体定义可包括多个信息元素。随后,定义具有访问信息元素的许可的用户或用户群的许可细节与这些信息元素中的一个或多个相关联。当接收到访问企业实体定义的用户请求时,将访问仅限于用户具有所需许可的那些信息元素。

著录项

  • 公开/公告号CN1764880A

    专利类型发明专利

  • 公开/公告日2006-04-26

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN200380110244.5

  • 发明设计人 约翰·科尔格拉夫;

    申请日2003-12-12

  • 分类号G06F1/00(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人邸万奎;黄小临

  • 地址 美国纽约阿芒克

  • 入库时间 2023-12-17 17:08:02

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-05-26

    授权

    授权

  • 2006-06-14

    实质审查的生效

    实质审查的生效

  • 2006-04-26

    公开

    公开

说明书

技术领域

本发明涉及对企业服务的注册中心(registry)例如UDDI注册中心的用户访问,更具体地,涉及用户从注册中心得到企业服务的细节。

背景技术

近年来,对于企业(business)来说,为用户提供使用与企业的计算机通信的计算机从该企业购买商品已变得平常。例如,企业可在因特网上提供网站,其使用户能够在万维网上从该企业购买商品。随着这样的成功,更容易地定位要与之交往的企业已变成一种需求,并且已通过例如由UDDI(Universal description,Discovery and Integration,通用描述、发现和集成)指定的注册中心服务的开展而满足了此需求,其中,所述注册中心服务为提供服务的企业实体提供支持。

UDDI注册中心使企业实体能够公布有关其提供的服务的信息,并使用户能够发现有关所公布的企业服务的信息。因而,例如,用户可向UDDI注册中心发送请求,以得到提供用户所需要的特定服务的企业服务的细节。随后,用户在通过UDDI注册中心返回了细节的一个或多个企业服务中进行选择,并发送对所选的企业服务的适当请求。然而,UDDI注册中心可能向用户返回其不具有适当的访问许可的企业服务的细节,并且,结果,直到用户对特定企业服务的请求被拒绝,用户将不会发现他们不能访问该特定的企业服务。

对于用户来说,对必然要失败的企业服务做出请求是时间和资源的浪费,并且,对于提供服务、必须处理来自不具有访问该服务所需的许可的用户的请求的企业来说,这是时间和资源的浪费。结果,提供节省这种浪费的时间和资源的方法将是具有优势的。

发明内容

本发明通过提供用于保持企业实体定义的注册中心(如UDDI注册中心)的装置,以将对企业定义中的信息的用户访问限制为该用户具有访问许可的访问,而解决了此问题。

根据第一方面,本发明提供了一种用于企业实体定义的注册中心处理访问企业实体定义的用户请求的方法,该方法包括以下步骤:从用户接收访问企业实体定义的请求;从与该请求相关联的数据得到用户的身份(identity);根据与企业实体定义和用户的身份相关联的许可细节而确定该用户是否具有访问该企业实体定义中的信息的许可;以及如果确定该用户不具有许可,则拒绝用户访问该企业实体定义中的信息。

根据第二方面,本发明提供了一种企业实体定义的注册中心,用于处理访问企业实体定义的请求,该注册中心包括:用于从用户接收访问企业实体定义的请求的装置;用于从与该请求相关联的数据得到用户的身份的装置;用于根据与企业实体定义和用户的身份相关联的许可细节而确定该用户是否具有访问该企业实体定义中的信息的许可的装置;以及用于如果确定该用户不具有许可、则拒绝用户访问该企业实体定义中的信息的装置。

根据第四方面,本发明提供了一种用于处理访问企业实体定义的用户请求的注册中心服务,提供该服务包括以下步骤:从用户接收访问企业实体定义的请求;从与该请求相关联的数据得到用户的身份;根据与企业实体定义和用户的身份相关联的许可细节而确定该用户是否具有访问该企业实体定义中的信息的许可;以及如果确定该用户不具有许可,则拒绝用户访问该企业实体定义中的信息。

根据第三方面,本发明提供了一种计算机程序产品,其包括在数据处理主机上运行时、使所述数据处理主机执行根据第一方面的方法的指令。

用户访问请求可用来读取、更新、或删除包含在企业实体定义中的信息的全部或子集。如果该请求用来读取企业服务定义,则它可以是读取特定企业实体定义、或满足在该请求中指定的搜索标准的企业实体定义的请求。例如,可使用该搜索标准来定位企业实体定义、并确定用户希望访问该企业实体定义中的何种信息。

可选地,企业实体定义可包括多个信息元素,并且,许可细节与这些信息元素中的每个相关联。结果,许可细节可用来仅拒绝对该许可细节表明用户不具有所需许可的那些信息元素的用户访问。然而注意,这不需要企业实体定义中的所有信息元素具有所关联的许可细节。此外注意,不必确定用户是否具有访问具有所关联的许可细节的所有信息元素的许可,而可仅确定用户是否具有访问该用户已请求访问的那些信息元素的许可。

如果许可细节与企业实体定义中的多个信息元素相关联,则可使用访问策略,其用来使用与信息元素相关联的许可细节和不同信息元素的许可细节两者,确定用户是否具有访问信息元素的许可。例如,如果信息元素是分级形式、使得第一信息元素包含一个或多个第二信息元素,那么,如果用户不具有访问包含在其内的第二信息元素的全部或子集的访问权,则可拒绝对第一信息元素的访问。

例如,许可细节可包括具有对企业实体定义或企业服务定义的信息元素的访问权的一个或多个客户或用户的标识符、和/或一个或多个客户或用户群的标识符,其中,许可细节与企业实体定义相关联。此外;还可指示标识符所具有的访问级别,例如,读取、更新和删除。此外,可以各种格式来存储许可细节,例如,以作为包含用户和每个用户的访问权的列表的文件的访问控制列表(ACL)来存储许可细节。

优选地,从文件系统得到许可细节,其中,它们与企业实体定义或企业实体定义中的信息元素的关联性用来确定它们在该文件系统中的位置。例如,如果唯一密钥与企业实体定义和包含在其内的每个信息元素相关联,则与信息元素相关联的ACL将位于由企业实体定义的密钥和信息元素的密钥所定义的目录中。结果,可容易地定位许可细节,并且,企业实体定义不需要为了包含或引用许可细节而更新。可替换地,许可细节可被包括在企业实体定义或企业实体定义中的信息元素中,或从企业实体定义或企业实体定义中的信息元素对其进行引用,其中,许可细节与企业实体定义相关联。

可选地,注册中心是UDDI注册中心,而企业实体定义中的信息是企业实体信息元素,其中企业实体信息元素包含一个或多个企业服务信息元素,每个企业服务包含一个或多个绑定模板信息元素,而每个绑定模板包含一个或多个引用,每个引用用于引用技术模型信息元素。

可选地,该用户可以是网络用户,其通过因特网与UDDI注册中心通信,以得到可在因特网上访问的网络服务的细节。

附图说明

现在将通过参照如附图所示的本发明的优选实施例、仅通过例子来描述本发明,其中:

图1是可有利地应用本发明的优选实施例的数据处理环境的方框图;

图2是根据现有技术的UDDI规范的企业实体定义中的主信息元素的示意图;

图3是示出根据现有技术的UDDI规范、用户试图访问他们不具有所需的访问许可的企业服务的例子的示意图;

图4是根据本发明的优选实施例的、企业实体定义和所关联的访问控制列表的示意图;

图5是示出根据本发明的优选实施例、用户试图访问他们不具有访问许可的企业服务的例子的示意图;以及

图6是根据本发明的优选实施例的、UDDI注册中心和访问管理器所遵循的方法的概述的流程图。

具体实施方式

在图1中,客户机/服务器数据处理主机10通过网络11(例如,其可以是因特网)而被连接到其它客户机/服务器数据处理主机12和13。在优选实施例中,UDDI注册中心可被安装在任意这种客户机/服务器上,并从使用同一或另一个客户机/服务器数据处理主机的用户接受定义/更新网络服务的细节的请求、或得到网络服务的细节。客户机/服务器10具有:处理器101,用于运行控制客户机/服务器10的操作的程序;RAM易失性存储元件102;非易失性存储器103;以及网络连接器104,用于与网络11对接,以便与其它客户机/服务器12和13通信。

关于根据UDDI规范的企业实体定义和UDDI注册中心而讨论优选实施例。UDDI规范定义了一组XML大纲,它们是用于创建企业实体的定义的模板。结果,企业实体定义可以是一个或多个这些所定义的XML大纲的实例。

图2是根据现有技术的UDDI规范的示例企业实体定义的主要组成部分的示意图。企业实体定义提供了由企业向UDDI注册中心提供的服务的细节。企业实体定义包括企业实体(businessEntity)201,其包括关于企业的描述性信息202、以及关于企业实体所提供的一个或多个企业服务的信息。描述性信息202包括企业的名称和描述、一个或多个标识符、以及一个或多个类别。标识符用来唯一地识别企业,而一个或多个类别用来识别例如企业的行业类型、产品类型、以及地理位置。关于企业所提供的服务的信息是一个或多个企业服务(businessService)实体203。

每个企业服务实体203还提供关于服务的描述性和技术信息。描述性信息204包括服务的名称和描述、以及应用于服务的一个或多个类别。技术信息包括一个或多个绑定模板(binding template)205,每个绑定模板205包括绑定描述、应用于该绑定的一个或多个类别、各自引用技术模型(tModel)207的一个或多个引用、以及定义可联系服务的端点地址的接入点(accessPoint)。在UDDI中,tModel可用于各种目的,尽管主要目的是提供使用户能够做出对由包含服务的企业服务实体所定义的服务的请求的信息。因而,tModel可包括这样的信息,如服务所支持的接口和通信协议,尽管可使用多于一个tModel来提供这样的信息。由此,如果服务提供多于一个绑定模板,则它将支持多于一种与它通信的方法。

注意,图2仅图解了可在企业实体定义中定义的信息的子集,例如,企业实体描述性信息202可包括联系细节。此外,图2未描述与一些信息部分(例如,类别)相关联的复杂组成。然而,这样的附加信息与本发明无关。

例如,描述一组网络服务的企业实体定义可包括这种企业实体,其指定:名称“A银行(Abank)”;描述“A银行是提供金融服务的基于网络的银行”;类别“金融”和“英国(UK)”;标识符,其包括“plc”和A银行的公司注册号;以及3个企业服务实体,其描述企业实体所提供的帐户、股票、以及退休金的服务。例如,描述股票服务的企业服务实体可指定:名称“股票”;描述“A银行的股票服务”;类别“股票”和“英国”;以及两个绑定模板,其定义访问股票服务的两种不同方法,一种方法用于买股票,而另一种方法用于卖股票。例如,描述买股票服务的绑定模板可指定:描述“A银行的股票购买服务”;类别“购买”和“伦敦证券交易所”;指定可定位股票服务的URL的接入点;以及对两个tModel的引用,其中一个tModel用于希望使用基于超文本传输协议的简单对象访问协议(SOAP/HTTP)来访问服务的用户,而另一个tModel使用因特网Orb间协议(Internet Inter-Orb Protocol,IIOP)。例如,描述如何使用SOAP/HTTP来访问股票购买服务的tModel将包括:指定SOAP/HTTP以及购买查询(purchaseEnquiry)、购买确认(purchaseConfirm)和购买拒绝(purchaseDecline)请求的规范的信息。注意,在此例子中,为类别而指定的值将来自用户熟悉的预定义且公知的分类法。

图3是示出根据现有技术UDDI规范、用户试图访问其不具有访问许可的服务的例子的示意图。使用机器客户机X 301的用户首先向UDDI注册中心302发送请求(311),其指定他们希望得到在英国可用的股票购买服务的细节。UDDI注册中心随后在其数据库303中搜索已向它注册的企业实体定义304。它找到包括如上所述用于A银行305的企业实体定义的几个企业实体定义,并向用户的客户机X 301返回(312)它们的细节。用户更愿意使用A银行,并选择使用SOAP/HTTP进行通信,并且,结果,客户机X 301使用SOAP/HTTP向A银行发送购买查询请求(313),其指定用户的用户ID(userID),例如“Alex”。然而,A银行需要用户在访问其股票服务之前完成离线注册过程,而“Alex”之前未完成此过程。结果,A银行305拒绝(314)处理从“Alex”接收的购买查询请求,而“Alex”随后接收到对该请求的错误响应。现在,用户必须从先前由UDDI注册中心302返回(312)的那些服务中选择不同企业实体的不同股票服务来使用。注意,由用户发送到UDDI注册中心302的请求(311)也可用来得到专用于A银行的细节。

根据本发明,在图3的例子中,客户机X 301的用户在选择A银行服务305和向它发送购买查询请求(313)时已使用了不必要的时间和资源。此外,A银行服务305在处理和拒绝来自未授权的用户的请求时已使用了不必要的时间和资源。结果,如果不向用户返回如由A银行所提供的、未被授权访问的网络服务的细节,那么将会更好。

根据本发明的优选实施例,将外部访问管理器配置到UDDI注册中心中,以便可为在注册中心中保持的企业实体定义中的一个或多个信息元素(例如:企业实体、企业服务实体等)定义访问控制列表(ACL)。随后,使用ACL来控制允许哪些用户查看/读取、更新和/或删除该实体。注意,对于更新和删除来说,ACL超越了标准UDDI行为,所述标准UDDI行为是只有创建该实体的用户才可更新它或删除它。此外注意,例如,ACL可包括指定特定用户的标识符、和/或指定一群用户的标识符,并且,还包括每个用户或每群用户的细节,即:允许用户执行哪个操作,如读取、更新和/或删除。

图4是根据本发明的优选实施例的示例企业实体定义的示意图。该图具有与图2共同的部分,并且,对于共同的部分使用相同的标号。然而,该图还包括访问控制列表401、402、403和404。ACL 401与企业实体201相关联,并包含可访问该企业实体、以及包含在其中的描述性信息202的用户的列表。该企业实体包括几个企业服务实体203,每个企业服务实体203还与ACL 402相关联。如果仅可访问企业实体定义的用户的子集可访问企业服务实体,则企业服务实体需要ACL 402,并且因此,ACL 402包含在ACL 401中列出的用户的子集。在每个企业服务实体内有几个绑定模板,每个所述绑定模板与ACL 403相关联。如果仅可访问企业实体的用户的子集也可访问绑定模板,则绑定模板需要ACL 403。在每个绑定模板内有对一个或多个tModel的引用,其中每个tModel还与ACL 404相关联。注意,tModel是从绑定模板被引用的,而不是包括在绑定模板中,并且结果,可从多于一个绑定模板、以及从不同的企业实体定义引用相同的tModel。这意味着ACL 404不必包含在ACL 403中定义的用户的子集,而是包含更一般的列表,其可应用于引用它的所有企业实体定义位置。

例如,描述提供在企业服务实体中的定义的帐户、股票和退休金网络服务的X银行(Xbank)企业实体的企业实体定义可具有如现在所描述的关联的ACL。该银行允许来自英国的所有用户访问其服务,于是,与企业实体相关联的ACL指定定义英国用户的群。然而,股票服务限于4种注册用户:信任的证券商(DealerTrusted)、证券商(Dealer)、信任的出价者(PricerTrusted)、以及出价者(Pricer)。结果,与定义股票服务的企业服务实体相关联的ACL仅列出这四种用户。定义股票服务的企业服务实体包括两个绑定模板,一个用于得到股票的价格,并且一个用于得到股票的价格和交易。“信任的证券商(DealerTrusted)”和“证券商(Dealer)”是证券商(dealer),并且结果,与用于得到股票的价格和交易的绑定模板相关联的ACL仅列出这两种用户。信任的出价者和出价者仅做出价格查询,并且结果,与用于得到股票报价的绑定模板相关联的ACL仅包含这两种用户。用于得到股票的价格和交易的绑定模板包含对四个tModel的引用:tMDealSecure、tMDeal、tMPriceSecure、以及tMPrice。tMDealSecure和tMDeal描述如何访问交易功能,tMDealSecure使用安全连接,而tMDeal使用非安全连接。tMPriceSecure和tMPrice描述如何访问获得价格功能,tMPriceSecure使用安全连接,而tMPrice使用非安全连接。用于获得价格的绑定模板包含对两个tModel的引用,即tMPriceSecure、以及tMPrice。与每个tModel相关联的是ACL。用于tMDealSecure的ACL仅列出不是所信任的证券商的证券商,并且因此,必定使用安全连接。用于tMDeal的ACL仅列出作为安全证券商、并且被信任的被信任证券商,以使用非安全连接来访问服务。用于tMPriceSecure的ACL列出证券商和出价者,这是因为它们均不是被信任的,因此必须使用安全连接。最后,用于tMPrice的ACL列出安全证券商(DealerSecure)和安全出价者(PricerSecure),因为所述两者均是安全和被信任的,以使用非安全连接来访问服务。

注意,在另一个实施例中,分级的信息元素(企业实体、企业服务、绑定模板、tModel)中的一个或多个可能不具有所关联的ACL。在此情况下,可假定所有能够访问信息元素的用户也可访问包含在不具有所关联的ACL的信息元素内的任意信息元素。例如,如果绑定模板不具有所关联的ACL,则假定可访问包含它在内的企业服务的所有用户也可访问该绑定模板。

在优选实施例中,ACL使用虚拟文件系统与企业实体定义相关联。例如,在UDDI中,每个信息元素可与唯一密钥(unique key)相关联,使得每个企业实体、企业服务、绑定模板、以及tModel具有唯一密钥。因此,这些密钥可用来从跟随与企业实体定义相同分级的目录结构访问ACL。结果,例如,如果用于X银行企业实体的密钥是“X银行”,则用于X银行股票企业服务实体的密钥是“股票”,而用于股票服务绑定模板的密钥是“证券商”和“出价者”,将ACL置于如下的目录结构中:

/uddi/X银行/<用于X银行企业实体的ACL>

/uddi/X银行/股票/<用于股票企业服务的ACL>

/uddi/X银行/股票/证券商/<用于证券商绑定模板的ACL>

/uddi/X银行/股票/出价者/<用于出价者绑定模板的ACL>

然而,注意,为了说明的目的,在此例子中使用的密钥多少有些简单,与其它企业实体相比并不见得是唯一的。在实践中,为了获得唯一性,密钥很可能更为复杂,并包括UUID(通用唯一标识符)。

在另一个实施例中,可将企业实体定义更新为包括适当的ACL、或对适当ACL的引用。

图5是示出根据本发明优选实施例的、用户试图访问他们不具有所需的访问许可的企业服务的例子的示意图。该图具有与图3共同的部分,并且,对共同的部分使用相同的标号。使用机器客户机X 301的用户首先向UDDI注册中心302发送请求(511),其指定他们希望获得在英国可用的股票购买服务的细节。用户请求(511)还包括用户的标识符,例如“Fred”,例如,通过在客户机X 301中运行的中间件,而将该标识符添加到与该流程相关联的上下文。随后,UDDI注册中心在其数据库303中搜索已向其注册的企业实体定义304中提供所请求的服务的那些企业实体定义。它找到并保留几个适合的企业实体的列表,所述企业实体中的一个是X银行502。通过UDDI注册中心而配置访问管理器501,UDDI注册中心随后请求访问管理器501检查与已定位的企业实体定义中的任意相关信息元素相关联的每个ACL 504。所述检查利用用户请求(511)而使用包括在上下文中的用户标识符。例如,通过参照以上例子,X银行企业实体对在英国的所有用户允许访问,其中,“Fred”是所述用户中的一个。然而,X银行股票服务对于“Fred”来说是不可访问的,这是因为它仅对4种用户允许访问,即:信任的证券商、证券商、信任的出价者、以及出价者。结果,访问管理器(501)向UDDI注册中心表明验证失败,结果,从由该注册中心返回的服务的列表中移除X银行的细节。一旦UDDI注册中心已使用访问管理器来检查该列表中的所有企业实体,那么,它仅向客户机X 301返回(512)它具有访问许可的那些企业实体。

注意,在图5的例子中,该用户请求将获得满足搜索标准的企业实体的列表。在另一个实施例中,该请求可用于特定企业实体的细节、或用来更新或删除企业实体的XML大纲。

还要注意,向UDDI注册中心提供用于其企业实体定义的适合的许可列表(如ACL)是企业提供商的责任。结果,因为UDDI注册中心和企业很有可能处于不同的安全域中、并因此不具有对相同的许可列表的访问权,对于UDDI注册中心可用的许可列表可能变成过期的。结果,用户有可能将不会被提供他具有访问权的服务的细节,或者,他可能被提供他不具有访问权的服务的细节。

图6是根据本发明的优选实施例、UDDI注册中心和访问管理器所遵循的主要方法步骤的流程图。在步骤601,从用户接收访问企业实体定义的请求。由该请求所指定的访问类型可更新、删除或读取企业实体定义。在步骤602,定位被请求访问的企业实体定义,并且在步骤603,从在步骤601与该请求一起发送的信息中获得用户的标识符。该标识符可用于特定用户、或一群用户,并且随后,将其连同所搜寻的一个或多个企业实体定义的细节和访问类型一起提供到访问管理器。在步骤604,例如,访问管理器通过在访问管理器已知的虚拟文件系统中定位与该企业实体定义相关联的许可细节,而定位它们,并且随后,在步骤605,根据许可细节而查看所识别的用户是否具有访问企业实体定义、或一个或多个包含在其内的信息元素的所需许可。如果该用户不具有所需许可,则在步骤606,拒绝用户请求,并返回错误。然而,如果该用户确实具有所需许可,则在步骤607,允许访问该企业实体定义的该请求。用户还有可能仅具有对该企业实体定义的有限访问权,并且,若如此,则步骤607仅允许对用户具有访问权的该企业实体定义的子集的访问。

注意,图6的流程图是被简化的,并且,所述步骤不一定必须以所指定的次序来进行。例如,给定具有各自用于企业实体定义中的不同信息元素的多个所关联的许可细节的企业实体定义,可以循环方式进行步骤604和605,以便获得许可细节,随后,依次检查每个信息元素。此外,如果该请求是读取请求,则它可指定搜索标准,UDDI注册中心定位满足该标准的一个或多个企业实体定义。在此情况下,步骤604、605、606和607可处于循环中,其依次检查一个或多个企业实体定义中的每个。

注意,本领域的技术人员将意识到,可用各种编程语言来实现通过参照图6而描述的方法,例如,JavaTM、C、以及C++(Java是Sun Microsystems公司在美国、其它国家、或所述两者中的注册商标)。此外,本领域的技术人员将意识到,一旦被实现,便可将所述方法以源或可运行的形式而存储在诸如软盘、CD、以及DVD的介质上的包括一个或多个程序的计算机程序产品中,所述介质适合于加载到数据处理主机,并使数据处理主机执行所述方法。

此外注意,尽管已关于UDDI注册中心而描述了本发明,但本领域的技术人员将意识到,可实现并非UDDI注册中心、但提供与UDDI注册中心类似的功能的注册中心。

由此,根据本发明,例如UDDI注册中心的注册中心根据与企业服务定义相关联的许可细节,限制对包含在该注册中心中的企业实体定义的访问。企业实体定义可包括多个信息元素。随后,定义具有访问信息元素的许可的用户或用户群的许可细节与这些信息元素中的一个或多个相关联。当接收到访问企业实体定义的用户请求时,将访问仅限于用户具有所需的许可的那些信息元素。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号