无代码自动配置的制作方法

文档序号:6592980阅读:227来源:国知局
专利名称:无代码自动配置的制作方法
无代码自动配置背景计算机和计算系统已经影响了现代生活的几乎每个方面。计算机通常在工作、消 遣、保健、运输、娱乐、家政等中都有涉猎。在许多计算系统中,向在该计算系统内工作的各实体授予许可来允许这些实体访 问该计算系统内的特定资源通常是合乎需要的。例如,在一个人被一公司雇佣时,通过创建 电子邮件帐户向该个人分配对电子邮件的访问权、通过创建数据库访问帐户分配对特定数 据库的访问权、或分配对其他资源的访问权是适当的。已经创建了各种资源管理器系统来管理计算系统内的实体许可。资源管理器系统 与计算系统中的其他资源系统进行通信,以向其他资源系统提供为实体添加或移除许可的 指令。例如,华盛顿州雷蒙德市的微软 公司提供的身份寿命管理器 (ILM)提供管理计算 系统内的实体许可的能力。然而,许多这样的系统需要程序员创建允许资源管理器系统与 其他资源系统进行通信以使该系统为实体添加适当的许可的命令性程序代码。当然,这可 向资源管理功能添加附加复杂度和难度。在此要求保护的主题不限于解决任何缺点或仅在诸如上述环境中操作的各个实 施例。相反,提供该背景仅用以示出在其中可实践在此描述的部分实施例的一个示例性技 术领域。简要概述一些实施例包括用于管理计算环境中的资源的功能。例如,各实施例可以在包括 资源管理器的计算环境中实施。资源管理器包括用于管理计算环境中的资源的程序代码。 各方法可包括用于管理可从计算环境中的资源系统获得的资源的动作,包括管理对实体的 用于访问这些资源的许可。各方法可包括接收指示以下各项中的一个或多个的用户输入 应将新实体添加到资源管理器,资源管理器的一实体对象所表示的实体应使许可在资源管 理器处移除,或资源管理器的一实体对象所表示的实体应在资源管理器处添加许可。响应于接收到用户输入,可生成各个事件并在资源管理器处为下游资源系统创建 或从中移除各个对象。这些事件可以通过向预期规则列表添加规则或改变其中的规则来指 定应被执行以实现资源管理器处的各对象与下游资源系统处的各对象之间的同步的工作 流。响应于这些事件,工作流是使得在预期规则列表处添加或改变同步规则的执行事件。提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概 念。本概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定 所要求保护的主题的范围。另外的特征和优点将在以下的描述中阐述,并且部分可从该描述中显而易见,或 者可以从此处的教示实践中习得。本发明的特征和优点可以通过在所附权利要求中特别指 出的手段和组合来实现并获取。本发明的特征将从以下描述和所附权利要求书中变得完全 显而易见,或者可通过如下所述对本发明的实践而获知。附图简述为了描述能够获得上述和其他优点和特征的方式,将通过参考附图中示出的各具体实施例来呈现对以上简述的主题的更为具体的描述。应该理解,这些附图仅描绘了各典 型实施例,因此其不应被认为是对范围的限制,各实施例将通过使用附图用另外的特征和 细节来描述并解释,在附图中

图1示出包括资源管理器和下游连接的资源系统的拓扑结构;图2示出在下游资源系统中创建对象的方法;图3示出从下游资源系统中的对象移除许可的方法;图4示出向下游资源系统中的对象添加许可的方法;以及图5示出对检测到的许可与预期或所需许可进行协调的方法。详细描述本文描述的各实施例允许实现通过在适当时执行声明工作流来将资源管理器中 的对象与其他下游资源系统中的对象进行同步的资源管理器系统。具体而言,使用与下游 资源系统对象相关的资源管理器对象,可以在下游资源系统对象中授予适当的许可,以便 向与该资源管理器对象和下游资源系统对象相对应的实体授予适当的许可。这允许各实体 访问下游资源系统中的资源。以下讨论示出如何实现这一功能的多个示例。具体而言,可 以使用资源管理器来控制什么对象存在于下游资源系统中。对象在下游资源系统中的存在 允许对这些系统的功能进行使用并允许实现对这些资源的适当控制。例如,如果一用户对 象存在于下游资源系统中,则该用户对象可以提供用于允许计算机用户访问该资源系统上 的资源的功能。例如,如果要向用户授予对电子邮件系统的访问权,则通常将需要在该电子 邮件系统中创建用户对象。类似地,如果要向用户授予对数据存储系统中的数据的访问权, 则将需要在该数据存储系统中创建该用户的用户对象。资源管理器可以便于在下游系统中 创建这些用户对象,这些下游系统包括电子邮件系统、数据存储系统、或其他资源系统。先前没有以纯声明性方式控制数据如何在两系统之间流动的机制。本文描述的一 些实施例包括基于围绕“同步规则”连同策略规则和用于使用提供单组概念的一个模型来 代替各先前模型的过程的概念的统一模型,该单组概念通过例如使用在视觉上创建的过程 和同步规则来允许对数据如何在资源管理器流入和流出到下游资源系统进行定义。具体而 言,本文描述的各实施例可包括用于将资源管理器处的对象导出到下游资源系统的功能、 将下游资源系统处的对象导入到资源管理器的功能、以及用于更新或删除资源管理器中的 现有对象以及下游资源系统中的对应对象的功能。顾客可以使用资源管理器门户(包括图形用户界面)来定义封装数据如何流入和 流出资源管理器的细节的同步规则。资源管理器门户可包括图形用户界面,该图形用户界 面包括用于接收用户输入的用户交互式元素,这些用户输入定义由资源管理器管理的一个 或多个对象(包括对象名和对象类型)、用于将资源管理器所管理的对象与一个或多个下 游资源系统中的对象进行同步的流类型、一个或多个下游资源系统的标识、下游资源系统 中的与资源管理器中的一个或多个对象类型相对应的对象类型的标识、以及用于将下游资 源系统中的对象与资源管理器中的对象进行相关的关系准则的定义。具体而言,同步规则 可以定义资源管理器对象与下游资源系统中的对象之间的关系和转换。例如,关系可以基 于用户名、电子邮件地址、或其他标识符。同步规则可以定义资源管理器如何在下游资源 系统中创建对象、资源管理器如何在其自己的存储中创建对象、以及数据如何从下游资源 系统和资源管理器对象中流出。顾客随后可以使用策略规则和过程设计器向导来控制这些特定同步规则对资源管理器应用存储内的数据修改的应用。例如,各实施例可以实现用于同步规则设计器应用程序的允许IT专家设计同步 规则的图形用户界面元素。在一个实施例中,同步规则设计器的图形用户界面可以具有“概 要信息”、“范围”、“关系”、“出站属性流”、以及“入站属性流”屏幕画面的向导格式。“概要信息”屏幕画面允许设计者定义规则的名称、规则的描述、规则的依赖性、以 及规则的流类型。名称是可用于标识同步规则的名称。描述是规则的可任选描述,可包括 设计者认为适用的任何描述。还可以设定对另一同步规则的存在的依赖性。在一个实施例 中,“概要信息”屏幕画面提供用于选择已定义的同步规则的下拉菜单。与本文描述的其他 图形用户界面元素一样,可以另选地使用其他界面。“概要信息”屏幕画面还可包括用于选 择流类型的界面。例如,用户可以将规则定义成允许将数据导入到资源管理器的入站规则 和/或允许将数据导出到下游系统的出站规则。同步规则设计器应用程序还可包括“范围”屏幕画面。在该示例实施例中,“范围” 屏幕画面可以允许选择资源管理器对象类型、选择下游资源系统、选择下游系统对象类型、 和/或定义连接对象范围。定义连接对象范围可以通过定义标识同步规则将应用于下游资 源系统中的哪些对象的一个或多个过滤器来执行。在一个实施例中,同步规则应用于下游 资源系统中与连接对象范围中定义的所有条件都相匹配的对象。同步规则设计器应用程序还可包括“关系”屏幕画面。“关系”屏幕画面包括用于 定义如何标识和创建资源管理器与下游资源系统之间的关系的用户界面元素。具体而言, “关系”屏幕画面允许定义关系准则和关系创建。允许指定关系准则的用户界面元素允许 指定将资源管理器中的对象与下游资源系统中的对象链接在一起的条件。可以选择各种属 性,如电子邮件地址、用户名,等等。另外,可以指定各种条件。“关系”屏幕画面还允许指 定可在不满足所定义的关系准则中指定的关系准则的情况下创建对象。用户可以指定在资 源管理器中不存在某对象的情况下在资源管理器中创建该对象,在下游资源系统中不存在 某对象的情况下在下游资源系统中创建该对象,在下游资源系统中创建对象分层结构,和/ 或在对象被从资源管理器移除时从下游资源系统删除对象。同步规则设计器应用程序还可包括“出站属性流”屏幕画面。“出站属性流”屏幕画 面包括用于定义从资源管理器流传输到下游资源系统的属性和值的用户界面元素。“出站 属性流”用户界面元素允许定义用于标识从资源管理器流传输到下游资源系统中的一属性 的数据的源字段;标识下游资源系统中用于接收在源字段中标识的数据的属性的目的地; 以及各个选项。例如,用户可以指定由此只在创建了目的地对象时属性才进行流传输的选 项。此外,用户可以选择指定使用该属性来进行流传输以测试同步规则在目的地对象上的 存在的选项。同步规则设计器应用程序还可包括“入站属性流”屏幕画面。“入站属性流” 屏幕画面包括与“出站属性流”屏幕画面相类似的用户界面元素,除流被定义为从下游资源 系统到资源管理器之外。业务管理器设计器应用程序提供允许业务管理器向资源管理器对象添加同步规 则或从中移除同步规则的图形用户界面。添加或移除可以通过手动选择来执行,或被选择 来基于属性值自动执行。典型场景包括通过资源管理器自动配置(provisioning)新用户进入诸如各种电 子邮件系统、数据库系统、或其他系统等下游系统中。自动配置可包括例如向适当的系统资源添加对新雇员的许可来允许该雇员执行必要的工作功能。现在将使用图1来示出一示 例。注意,在图1中,可以概括或具体地描述各种组件。例如,对资源管理器对象106的概 括引用一般指的是任何和所有资源管理器对象,而对资源管理器对象实例的具体引用可以 通过引用诸如资源管理器106a等附加插入指示符来进行。类似引用和指示在图1中针对 同步规则102、预期规则列表104、下游资源系统对象108、以及检测到的规则列表(DRL) 112 来示出。同样要注意,虽然未具体讨论,但包括了诸如102b、104b、106b、112b、108b-108f、 114b以及114c等一些具体表示以说明计算环境中可以包括一个项的多个具体实例。然而, 可以通过参考以下引用的单个实例来理解其余原理。现在示出一示例,在自动配置的情况下,并且再次参考图1,可以在资源管理器 110处的预期规则列表(ERL) 104中定义并包括同步规则102,同步规则102包括如何将被 创建为资源管理器对象类型的对象转换成下游资源系统对象。在一些实施例中,可以通过 使用上述图形用户界面来定义同步规则。注意,同步规则102可以被显式地包括在预期 规则列表104中,或可以在适当时与预期规则列表104分开定义以及通过引用被包括在 预期规则列表104中。现在示出一示例,同步规则102a可以指示如何将资源管理器对象 106a (在被创建或修改时)转换成下游资源系统114a处的对应的下游资源对象108a。同 步规则102可以定义数据如何从资源管理器110流传输到下游资源系统对象108,以及关 于如何寻找已经存在的下游资源系统对象108以用于流传输数据的具体指令和关于在没 有找到合适的对象的情况下(在需要时)如何创建新下游资源系统用户对象108的其他指 令。一旦定义了同步规则102,顾客随后可以在对象通过其资源管理服务到达时关于 在资源管理器110中创建新的资源管理器对象106来定义策略规则。从这里,客户可以构造 资源管理器过程,与将向先前定义的同步规则102添加新创建的资源管理器对象106的事 件的动作阶段相关联。最终结果是当在资源管理器110中创建新资源管理器对象106时, 将生成使得这一动作过程运行并用信号通知要向该新创建的资源管理器对象106应用同 步规则102的事件。使用这些构造,用户可以创建诸如声明性工作流形式的任意复杂的过程,这些过 程将视它们自己的业务过程的需要和规定来将资源管理器110中的对象添加到同步规则 102或从中移除。其中用户离开公司的终止或解除自动配置(de-provisioning)场景可以按与创 建场景类似的方式来处理,只是将定义在资源管理器对象106从资源管理器系统中删除的 情况下运行的过程并且该过程会从同步规则102移除该已删除资源管理器对象106。注意, 声明性工作流与命令性编程在声明性工作流中的声明性对象定义最终目标而不定义实现 该目标的具体动作方面不同。相反,命令性编程要求程序员显式地定义每一步骤而不必定 义最终目标。本文描述的各实施例可包括同步规则102的概念内的双向数据流逻辑的定义。其 他实施例可包括根据策略规则与后续资源管理器过程的执行的匹配来应用同步规则102。各实施例可以针对同步引擎对同步规则的处理以及通过资源管理器请求处理循 环(在一实施例中,它通过三个不同的阶段认证、授权、以及动作来处理最终用户web服务 请求)完成的对相关资源管理器对象106进行的规则应用。
在同步规则的单个结构内,顾客定义下游资源系统中的对象与资源管理器元空间 (metaverse)中的对象之间的关系以及这两者之间的数据流。在资源管理器的先前版本 中,该单个结构不存在,而相反,用户必须通过与管控来自资源管理器的出站数据流的概念 (编程逻辑+出站流)无关的单个概念集(连结/投影/入站流)来定义入站数据流。在 一些实施例中,同步规则定义旨在同等对待流的两个方向的新概念集,而同时消除对作为 该结构的一部分的任何编程的需求。在将来自下游资源系统的变更导入资源管理器(“入站”)时以及在将来自资源管 理器的变更导出到下游资源系统(“出站”)时,运行同步规则。在任何方向上,同步规则可以通过确定适当的对象集合的范围,随后寻找或建立 与其他系统中的对象的关系,并随后应用被指定为该规则的一部分的、作为该关系的一部 分发现的源对象与目标对象之间的变换来操作。当查看从下游资源系统到资源管理器的流的方向时,可以通过直接属性-值过滤 器来实现范围确定,该属性_值过滤器被用来收集下游资源系统中在导入时应当对其应用 同步规则的必要对象集合。然而,当从资源管理器的观点来查看同步时,集合成员关系、策略规则以及过程可 以是将哪些对象带入或带出同步规则的范围的命令器(dictator)而非在入站情况下使用 的直接过滤器。具体而言,在查看资源管理器时,可能没有收集某一规则的范围内的用户的 自动过滤器,而相反,每一资源管理器对象关联了应当应用于该资源管理器对象的同步规 则的列表。这一列表在此被称为预期规则列表104。在同步规则出现在资源管理器对象的 预期规则列表104上时,该资源管理器对象随后在同步引擎的下一次运行时被手动地添加 到相关联的同步规则的范围。期望通过使用同步规则活动来操纵预期规则列表的声明性工 作流中的动作过程来将同步规则添加到资源管理器对象的预期规则104列表中或从中移 除同步规则。期望这些动作工作流作为对其对象的正常资源管理器操作的结果来启动。另外,每一资源管理器对象106还具有对确认在真实世界中什么同步规则存在于 资源管理器对象上进行可视化的相关联的列表,该列表被称为检测到的规则列表122。检测 到的规则列表112和预期规则列表104可以彼此完全独立,并且只从以资源管理器为中心 的观点而言是适用的。即,预期规则列表104用于出站同步,并且检测到的规则列表112用 于寻找资源管理器对象在下游系统中的表示。在图1中,108a是106a的下游表示。检测到的规则列表112可以通过标识连接下游系统114中的对象并将这些对象与 资源管理器110中的对象进行相关来创建。可以在必要时在资源管理器110中创建资源管 理器对象106来说明在下游资源系统中发现的对象108。通常,下游资源系统114可包括向 资源管理器110不知道的实体授予许可的对象108。创建检测到的规则列表112提供了用 于标识下游系统114中的这些对象108的功能。随后可以更新预期规则列表104以记录下 游系统114中的对象108或者通过从下游系统114中移除下游资源系统对象108来移除许 可或从下游系统对象108中移除许可。预期规则列表104和检测到的规则列表112构造允许用户查看资源管理器对象 106的表示在下游系统114中作为下游资源系统对象108应当看起来如何以及确认该表示 实际上是什么。检测到的规则列表112证明对遵循报告而言尤其有用,因为单个属性将显 示该特定资源管理器对象106的已知表示,这是因为已知它与其他系统中的下游资源系统对象108相对应。如上所述,如果同步规则是在入站方向上评估的,则对象的范围确定可以经由过 滤器来完成。如果它是在出站支路中评估的,则使用每一对象的预期规则列表104来确定 哪些对象落入同步规则102的范围内。以下讨论现在引用多种方法以及可以执行的方法动作。应当注意,虽然以特定次 序讨论了这些方法动作,但除非具体指出或因为一动作依赖于在该动作执行之前完成的另 一动作而需要特定排序,否则不一定需要特定排序。现在参考图2,示出了方法200。例如,方法200可以在包括资源管理器的计算环 境中实施。资源管理器包括用于管理资源的程序代码。方法200包括接收指示应当将新实 体添加到资源管理器的用户输入的动作(动作202)。例如,在图1示出的示例中,用户可能 需要将诸如资源管理器对象106a等新对象添加到资源管理器110。用户可以使用耦合到资 源管理器110的用户界面来指示对添加资源管理器对象106a的要求。响应于接收到指示应当将新实体添加到资源管理器的用户输入,方法200还包括 创建与该新实体相对应的新实体对象(动作204)并生成一事件(动作206)。例如,资源管 理器对象106a可被添加到资源管理器储存库并且可以生成一事件。该事件可以指定应当 执行的工作流。该工作流被配置成将同步规则102添加到该新实体对象专用的预期规则列 表104a。例如,工作流可被配置成将同步规则102a添加到预期规则列表104a。预期规则 列表上的同步规则102定义如何将资源管理器110处的对象106转换成下游资源系统114 处的对象108。具体而言,同步规则102可以定义如何在下游资源系统114中创建一个或多 个实体对象108、如何在资源管理器110处创建一个或多个实体对象106、以及如何将数据 从下游资源系统114流传输到资源管理器对象106。另外,同步102规则可以在单个同步规 则102内定义下游资源系统114与资源管理器110之间的入站、出站、或双向关系中的一个 或多个。方法200还示出响应于该事件,执行该事件中指定的工作流,从而使得将同步规 则添加到预期规则列表(动作208)。如图1所示,同步规则102a被添加到预期规则列表 104a。注意,将同步规则添加到预期规则列表可以用多种不同的方式来执行。例如,同步规 则102a可以被存储在资源管理器110处的规则储存库中。可以通过对规则储存库中的同 步规则的引用来将同步规则102a添加到预期规则列表104a。或者,可以通过预期规则列表 104a中的直接定义来将规则显式地添加到预期规则列表。换言之,预期规则列表104可以 担当预期规则列表104中的同步规则102的储存库。还可以实施方法200以使得在资源管理器的同步引擎处,执行工作流来将新实体 对象与该资源管理器所管理的下游资源系统中的对应对象进行同步,以便通过执行预期规 则列表中的同步规则来在下游资源系统中为该新实体创建许可。例如,同步引擎可以引用 预期规则列表104a中的同步规则102a。同步引擎可以确定资源管理器对象106a应当与下 游资源系统114a处的下游资源系统对象108a进行同步。如以下更详细地描述的,这可以 通过现有下游资源系统对象108与资源管理器对象106的相关或通过创建与资源管理器对 象106相对应的新下游资源系统对象108来实现。例如,可以执行方法200,其中使得在下游资源系统中为新实体创建许可包括确定 与该新实体对象相对应的对象在下游资源系统中不存在;以及在下游资源系统中创建与资源管理器处的该新实体对象相对应的对象。在图1所示的示例中,在同步引擎执行工作流 以同步用于将资源管理器对象106a与下游资源系统对象108a进行同步的同步规则102a 时,下游资源系统对象108a在下游资源系统114a中不存在。因此,各实施例可包括在下游 资源系统114a中创建下游资源系统对象108a。这允许在授予适当权限和许可时进行进一 步同步。在一个实施例中,可以实施方法200,其中执行工作流来将新实体对象与资源管理 器对象所管理的下游资源系统中的对应对象进行同步包括根据为同步规则指定的优先次 序来执行同步规则。该优先次序指定应当在其他同步规则之前执行的同步规则。例如,预 期规则列表104a可包括多个同步规则,包括规则102a到102η。然而,在其他规则中指定的 同步之前执行一些同步规则102中指定的同步是合乎需要的。可以完成这一点,例如以确 保一个规则中指定的许可或约束不被不同的同步规则的稍后应用所盖写。现在参考图3,示出了方法300。方法300示出可以在包括资源管理器的计算环境 中执行的多个动作。资源管理器包括用于管理计算环境中的资源的程序代码。方法300包 括用于管理资源的动作,包括管理对实体访问这些资源的许可。该方法包括接收指示资源 管理器的实体对象所表示的实体应当在该资源管理器处移除许可的用户输入(动作302)。 例如,与连接到资源管理器110的用户界面进行交互的用户可以指示与资源管理器对象 106a相对应的实体应当从下游资源系统114中移除许可。例如,如果该实体是一组织的雇 员并且该实体的角色改变了,则从特定下游资源系统114移除特定许可来使得该实体不再 能够对该下游资源系统114处的资源进行访问或执行特定访问动作是必要的。这可以由与 资源管理器110进行交互的管理员来指示。响应于接收到实体应当在资源管理器处移除许可的用户输入,生成一事件(动作 304)。该事件指定应当执行的工作流。该工作流被配置成使得该实体对象专用的预期规则 列表中的同步规则指示应当移除该实体在一个或多个下游资源系统中的许可。例如,可以 修改同步规则102a以指示应当从下游资源系统对象108a移除许可。方法300还可包括响应于该事件,执行该事件中指定的、使得同步规则指示应当 移除该实体在一个或多个下游资源系统中的许可的工作流(动作306)。方法300还可包括在资源管理器的同步引擎处,执行工作流来将实体对象与该资 源管理器所管理的下游资源系统中的对应对象进行同步,以便移除该实体在该下游资源系 统中的许可。例如,工作流可被配置成引用同步规则102a并将资源管理器对象106a与下 游资源系统对象108a进行同步,其中这样的同步导致移除下游资源系统对象108a的许可。在一个实施例中,可以实施方法300,其中使得该实体对象专用的预期规则列表中 的同步规则指示应当移除该实体在下游资源系统中的许可包括向该预期规则列表添加新 同步规则。例如,指示应当移除许可的新同步规则102可被添加到预期规则列表104。在一个实施例中,方法300还可包括生成检测到的规则列表,其中该检测到的规 则列表指定该实体对象对于计算环境中的资源的现有许可。生成检测到的规则列表包括检 查下游资源系统中的对象并将下游资源系统中的所检查的对象与资源管理器所管理的资 源管理器对象进行相关。执行事件中指定的、使得从预期规则列表中移除同步规则的工作 流(动作306)包括使得执行使来自检测到的规则列表的现有许可被从预期规则列表移除 的工作流。
例如,如以上讨论的并且如以下将更详细地讨论的,检测到的规则列表112a可以 确定下游资源系统对象108a包括不希望被授予与下游资源系统对象108a相对应的实体的 某些许可。为移除这些许可,可以将从下游资源系统对象108a特别地移除这些许可的同步 规则102添加到预期规则列表104a。在一替换实施例中,使得该实体对象专用的预期规则列表中的同步规则指示应当 移除该实体在下游资源系统中的许可可包括修改该预期规则列表中的现有同步规则。例 如,如果同步规则102a被包括在预期规则列表104a上并且向下游资源系统对象108授予 某些许可,则移除这些许可可以通过修改同步规则102a来实现。图4示出可以在包括资源管理器的计算环境中实施的又一实施例。资源管理器包 括用于管理计算环境中的资源的程序代码。该管理资源的方法包括管理对实体访问这些资 源的许可。方法400包括接收指示资源管理器的实体对象所表示的实体应当在该资源管理 器处添加许可的用户输入(动作402)。例如,资源管理器110中可存在与一实体相对应的 资源管理器对象106a。与资源管理器110进行交互的管理员可以提供指示应当在下游资源 系统114中为资源管理器对象106a添加附加许可的用户输入。方法400还示出响应于接收到实体应当在资源管理器处添加许可的用户输入,生 成一事件(动作404)。该事件指定应当执行的工作流。该工作流被配置成使得该实体对象 专用的预期规则列表中的同步规则指示应当添加该实体在一个或多个下游资源系统中的 许可。如先前示例中所示,可以将同步规则102a添加到预期规则列表104a,或在适当的同 步规则102a已经存在于预期规则列表104a的情况下修改该同步规则102a,以允许一事件 指示应当向下游资源系统对象108a添加许可。方法400还可包括响应于该事件,执行该事件中指定的、使得同步规则指示应当 添加该实体在一个或多个下游资源系统中的许可的工作流(动作406)。方法400还可以包括在资源管理器的同步引擎处,执行工作流来将该实体对象与 该资源管理器所管理的下游资源系统中的对应对象进行同步,以便通过执行预期规则列表 中的同步规则来在下游资源系统中为该新实体创建许可。例如,工作流可被配置成引用 预期规则列表104a中的同步规则102a,以同步和/或以其他方式创建下游资源系统对象 108a中的许可。如上所述,若干实施例利用检测到的规则列表,其中该检测到的规则列表定义实 体在下游资源系统中的许可的实际状态。因此,一些实施例可以针对生成检测到的规则列 表并适当地利用该检测到的规则列表。例如,方法500可以在包括资源管理器的计算环境 中实施,该资源管理器包括用于管理该计算环境中的资源的程序代码,方法500包括生成 检测到的规则列表(动作502)。检测到的规则列表指定实体对计算系统中的资源的现有许 可。生成检测到的规则列表包括检查下游资源系统中的对象并将下游资源系统中的所检查 的对象与资源管理器所管理的资源管理器对象进行相关。方法500还包括访问预期规则列表(动作504)。预期规则列表定义实体对计算 系统中的资源的应当存在的许可。例如,预期规则列表可以定义应如何在资源管理器对象 102与对应的下游资源系统对象108之间执行同步。可以从预期规则列表104中的各规则 中推断或确定许可。方法500还包括将检测到的规则列表与预期规则列表进行比较,并确定检测到的规则列表包括预期规则列表中未包括的许可(506)。例如,检测到的规则列表104a可以与 检测到的规则列表112a相比较。基于该比较,可作出检测到的规则列表112a包括预期规 则列表104a中未包括的实体许可的判定。可以提供检测到的规则列表包括未包括在预期规则列表中的许可的指示(动作 508)。方法500还包括接收指示检测到的规则列表中包括的且预期规则列表中未包括 的许可应被移除的用户输入。这一实施例还包括响应于该用户输入,通过修改预期规则列 表并执行工作流来移除检测到的规则列表中包括的且预期规则列表中未包括的许可。该工 作流被配置成使得移除下游资源系统中的许可。在一个实施例中,修改预期规则列表包括 在预期规则列表中包括指示移除一个或多个许可的条目。在方法500的一个实施例中,将下游资源系统中所检查的对象与资源管理器所管 理的对象进行相关包括确定资源管理器中不存在可与下游资源系统中的对象进行相关的 对象。在资源管理器中创建用于与下游资源系统中的对象进行相关的对象。可以实施方法500,其中预期规则列表包括一个或多个同步规则。该一个或多个 同步规则中的每一个可包括多个参数。例如,该一个或多个同步规则中的每一个可包括用 于标识同步规则的指示符。该一个或多个同步规则中的每一个可包括对指定该同步规则可 用于将数据从下游资源系统导入资源管理器或将数据从资源管理器导出到下游资源系统 中的至少一个的流类型的定义。该一个或多个同步规则中的每一个可包括对资源管理器中 的、对其应用该同步规则的对象类型的指定。该一个或多个同步规则中的每一个可包括对 下游资源系统的指定。该一个或多个同步规则中的每一个可包括对下游资源系统中的对其 应用该同步规则的对象类型的指定。该一个或多个同步规则中的每一个可包括对包括用于 链接资源管理器中的对象与下游资源系统中的对象的一个或多个条件的关系准则的指定。可以实现各实施例,其中该一个或多个同步规则中的每一个可以任选地包括对属 性流信息的指定。该一个或多个同步规则中的每一个可以任选地包括同步规则的描述。该 一个或多个同步规则中的每一个可以任选地包括定义对于另一同步规则的存在的依赖性 的信息。该一个或多个同步规则中的每一个可任选地包括用于标识下游资源系统中、将对 其应用该同步规则的对象的过滤器。该过滤器可包括为应用该同步规则而必须满足的条 件。该一个或多个同步规则中的每一个可任选地包括可以在不满足关系准则中指定 的关系准则时使用的关系创建动作的指定。例如,关系创建动作可包括在资源管理器中不 存在一对象的情况下在资源管理器中创建该对象。作为替换或补充,关系创建动作可包括 在下游资源系统中不存在一对象的情况下在下游资源系统中创建该对象。作为替换或补 充,关系创建动作可包括在下游资源系统中创建对象分层结构。作为替换或补充,关系创建 动作可包括在一对象被从资源管理器移除时从下游资源系统中删除对应的对象。本文的各实施例可以包括含有各种计算机硬件的专用或通用计算机,这将在以下 做出更详细的讨论。各实施例还可包括用于承载或其上储存有计算机可执行指令或数据结构的计算 机可读介质。这样的计算机可读介质可以是可由通用或专用计算机访问的任何可用介质。 作为示例而非限制,这样的计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘
13存储、磁盘存储或其他磁存储设备,或可以用来携带或存储计算机可执行指令或数据结构 的形式的所需程序代码装置并可由通用或专用计算机访问的任何其他介质。当通过网络或 另一通信连接(硬连线、无线,或硬连线或者无线的组合)向计算机传输或提供信息时,该 计算机适当地将该连接视为计算机可读介质。如此,任何这样的连接被适当地称为“计算机 可读介质”。上面各项的组合也应该包括在计算机可读介质的范围内。计算机可执行指令包括例如使通用计算机、专用计算机或专用处理设备执行某一 功能或一组功能的指令和数据。尽管已经用结构特征和/或方法动作专用的语言描述了本 主题,但可以理解,所附权利要求书中定义的本主题不必受上述具体特征或动作的限制。相 反,上文所描述的具体特征和动作是作为实现权利要求的示例形式来公开的。在不偏离本发明的精神和必要特征的情况下,本发明能以其他具体形式来实现。 所描述的实施例在各个方面都只作为说明性的,而不是限制性的。因此,本发明的范围由所 附权利要求书而不是由前面的描述指出。在权利要求的等效方案内的含义和范围内的所有 更改都将包括在它们的范围内。
权利要求
一种在包括资源管理器的计算环境中的方法,所述资源管理器包括用于管理所述计算环境中的资源的程序代码,所述方法管理可从所述计算环境中的资源系统获得的资源,包括管理对实体访问所述资源的许可,所述方法包括接收指示应当将新实体添加到所述资源管理器的用户输入;响应于接收到指示应当将新实体添加到所述资源管理器的用户输入,在所述资源管理器处创建与所述新实体相对应的新实体对象并生成一事件,所述事件指定应当执行的工作流,其中所述工作流被配置成将同步规则添加到所述新实体对象专用的预期规则列表,其中所述预期规则列表上的规则定义如何将所述资源管理器处的对象转换成下游资源系统处的对象;响应于所述事件,执行所述事件中指定的、使得将同步规则添加到所述预期规则列表的工作流。
2.如权利要求1所述的方法,其特征在于,还包括在所述资源管理器的同步引擎处,执 行一工作流来将所述新实体对象与所述资源管理器所管理的下游资源系统中的对应对象 进行同步,以便通过执行所述预期规则列表中的同步规则来在所述下游资源系统中为所述 新实体创建许可。
3.如权利要求2所述的方法,其特征在于,使得在所述下游资源系统中为所述新实体 创建许可包括确定所述下游资源系统中不存在与所述新实体对象相对应的对象;以及在所述下游资源系统中创建与所述资源管理器处的新实体对象相对应的对象。
4.如权利要求2所述的方法,其特征在于,执行一工作流以将所述新实体对象与所述 资源管理器所管理的下游资源系统中的对应对象进行同步包括根据为同步规则指定的优 先次序来执行所述同步规则,其中所述优先次序指定应当在其他同步规则之前执行的同步 规则。
5.如权利要求1所述的方法,其特征在于,所述同步规则中的至少一个定义如何在下游资源系统中创建一个或多个实体对象;如何在所述资源管理器处创建一个或多个实体对象;以及如何将数据从下游资源系统流传输到资源管理器对象。
6.如权利要求5所述的方法,其特征在于,所述同步规则中的至少一个在单个同步规 则内定义下游资源系统与所述资源管理器之间的入站、出站、或双向关系中的一个或多个。
7.如权利要求1所述的方法,其特征在于,所述工作流先前由管理员使用显示图形用 户界面的系统来定义,所述图形用户界面包括用于接收用户输入的用户交互式元素,所述 用户输入定义由资源管理器管理的一个或多个对象,包括对象名和对象类型;用于将资 源管理器所管理的对象与一个或多个下游资源系统中的对象进行同步的流类型;一个或多 个下游资源系统的标识;下游资源系统中、与所述资源管理器中的一个或多个对象类型相 对应的对象类型的标识;以及用于将下游资源系统中的对象与所述资源管理器中的对象进 行相关的关系准则的定义。
8.—种在包括资源管理器的计算环境中的方法,所述资源管理器包括用于管理所述计 算环境中的资源的程序代码,所述方法对资源进行管理,包括管理对实体访问所述资源的 许可,所述方法包括接收指示所述资源管理器的实体对象所表示的实体应当在所述资源管理器处移除许 可的用户输入;响应于接收到一实体应当在所述资源管理器处移除许可的用户输入,生成一事件,所 述事件指定应当执行的工作流,其中所述工作流被配置成使得所述实体对象专用的预期规 则列表中的同步规则指示应当移除所述实体在一个或多个下游资源系统中的许可;响应于所述事件,执行所述事件中指定的、使得同步规则指示应当移除所述实体在一 个或多个下游资源系统中的许可的工作流。
9.如权利要求8所述的方法,其特征在于,还包括在所述资源管理器的同步引擎处,执 行一工作流来将所述实体对象与所述资源管理器所管理的下游资源系统中的对应对象进 行同步,以使得移除所述实体在所述下游资源系统中的许可。
10.如权利要求8所述的方法,其特征在于,使得所述实体对象专用的预期规则列表中 的同步规则指示应当移除所述实体在下游资源系统中的许可包括向所述预期规则列表添 加新同步规则。
11.如权利要求8所述的方法,其特征在于,使得所述实体对象专用的预期规则列表中 的同步规则指示应当移除所述实体在下游资源系统中的许可包括修改所述预期规则列表 中的现有同步规则。
12.如权利要求8所述的方法,其特征在于,还包括生成检测到的规则列表,所述检测到的规则列表指定所述实体对象对计算系统中的资 源的现有许可,其中生成检测到的规则列表包括检查下游资源系统中的对象并将下游资源 系统中的所检查的对象与所述资源管理器所管理的资源管理器对象进行相关;以及其中执行所述事件中指定的、使得从所述预期规则列表中移除同步规则的工作流包括 使得执行使来自所述检测到的规则列表的现有许可被从所述预期规则列表移除的工作流。
13.—种在包括资源管理器的计算环境中的方法,所述资源管理器包括用于管理所述 计算环境中的资源的程序代码,所述方法对资源进行管理,包括管理对实体访问所述资源 的许可,所述方法包括接收指示所述资源管理器的实体对象所表示的实体应当在所述资源管理器处添加许 可的用户输入;响应于接收到一实体应当在所述资源管理器处添加许可的用户输入,生成一事件,所 述事件指定应当执行的工作流,其中所述工作流被配置成使得所述实体对象专用的预期规 则列表中的同步规则指示应当添加所述实体在一个或多个下游资源系统中的许可,其中所 述预期规则列表中的每一同步规则包括;用于标识所述同步规则的指示符;指定所述同步规则可用于将数据从下游资源系统导入所述资源管理器或将数据从所 述资源管理器导出到下游资源系统中的至少一个的流类型的定义;所述资源管理器中、对其应用所述同步规则的对象类型的指定;下游资源系统的指定;所述下游资源系统中、对其应用所述同步规则的对象类型的指定;包括用于链接所述资源管理器中对象的与所述下游资源系统中的对象的一个或多个 条件的关系准则的指定;以及属性流信息的指定;以及响应于所述事件,执行所述事件中指定的、使得所述预期规则列表中的同步规则指示 应当添加所述实体在一个或多个下游资源系统中的许可的工作流。
14.如权利要求13所述的方法,其特征在于,还包括在所述资源管理器的同步引擎处, 执行一工作流来将所述实体对象与所述资源管理器所管理的下游资源系统中的对应对象 进行同步,以便通过执行所述预期规则列表中的同步规则来在所述下游资源系统中为所述 新实体创建许可。
15.如权利要求13所述的方法,其特征在于,还包括确定所述一个或多个下游资源系统中已经存在授予所述许可的对象;在同步规则中将所述实体对象与所述一个或多个下游资源系统中已经存在的所述对 象进行关联。
16.如权利要求13所述的方法,其特征在于,所述一个或多个同步规则中的至少一个 还包括对所述同步规则的描述。
17.如权利要求13所述的方法,其特征在于,所述一个或多个同步规则中的至少一个 还包括定义对另一同步规则的存在的依赖性的信息。
18.如权利要求13所述的方法,其特征在于,所述一个或多个同步规则中的至少一个 还包括用于标识所述下游资源系统中、将对其应用所述同步规则的对象的过滤器。
19.如权利要求13所述的方法,其特征在于,所述过滤器包括为应用所述同步规则而 必须满足的条件。
20.如权利要求13所述的方法,其特征在于,所述一个或多个同步规则中的至少一个 还包括对可在不满足所述关系准则中指定的关系准则时使用的关系创建动作的指定,其中 所述关系创建动作包括以下各项中的一个或多个在所述资源管理器中不存在一对象的情况下在所述资源管理器中创建所述对象;在下游资源系统中不存在一对象的情况下在所述下游资源系统中创建所述对象;在下游资源系统中创建对象分层结构;以及在一对象被从所述资源管理器移除时从下游资源系统中删除对应对象。
全文摘要
对资源进行管理。资源管理器包括用于管理计算环境中的资源的程序代码。对可从计算环境内的资源系统获得的资源进行管理。各方法可包括接收指示以下各项中的一个或多个的用户输入应将新实体添加到资源管理器,资源管理器的一实体对象所表示的实体应在资源管理器处移除许可,或资源管理器的一实体对象所表示的实体应在资源管理器处添加许可。响应于接收到用户输入,可生成各个事件并从资源管理器为下游资源系统创建或移除各个对象。这些事件可以指定各个工作流,工作流应被执行以通过添加或改变预期规则列表中的规则来实现资源管理器处的各对象与下游资源系统处的各对象之间的同步。
文档编号G06F9/06GK101960420SQ200980107151
公开日2011年1月26日 申请日期2009年1月30日 优先权日2008年2月28日
发明者B·G·A·谢尔曼, B·P·贝凯特, H·Y·罗, J·吉尔, N·甘杰, R·D·沃德 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1