2.3 计划 Identity Manager 实施的技术方面

2.3.1 使用 Designer

Identity Manager 3.0 附带一个称作《Designer》的新工具。 Designer 可用于设计、测试和记录 Identity Manager 驱动程序。 Designer 还可用于查看口令同步和数据流动的方式。 有关更多信息,请参见《Designer for Identity Manager 3:Administration Guide》(Designer for Identity Manager 3:管理指南)。

2.3.2 在服务器上复制 Identity Manager 需要的对象

如果 Identity Manager 环境访问多个服务器以运行多个 Identity Manager 驱动程序,那么作为计划的一部分,您需要确保在运行这些 Identity Manager 驱动程序的服务器上复制某些 eDirectory 对象。

只要已过滤复本中包括驱动程序需要读取或同步的所有对象和特性,就可以使用这些复本。

请记住,必须为 Identity Manager 驱动程序对象授予对任何要同步的对象的足够 eDirectory 权限,方法是通过显式授权,或者使驱动程序对象的安全性等效于具有所需权限的对象。

运行 Identity Manager 驱动程序的 eDirectory 服务器(如果使用远程装载程序,则是驱动程序参照的 eDirectory 服务器)必须保存下列主复本或读-写复本:

  • 该服务器的驱动程序集对象。

    运行 Identity Manager 的每个服务器都应该有一个驱动程序集对象。 除非有特定的需求,否则不要将多个服务器与同一个驱动程序集对象关联。

    注:创建驱动程序集对象时,默认设置是创建独立的分区。 Novell 建议在驱动程序集对象上创建独立的分区。 要使 Identity Manager 正常运行,服务器需要保存驱动程序集对象的完整复本。 如果服务器具有驱动程序集对象的安装位置的完整复本,则不需要分区。

  • 该服务器的服务器对象。

    由于驱动程序使用服务器对象为对象生成密钥对,因此服务器对象是必需的。 对于远程装载程序鉴定来说它也很重要。

  • 需要驱动程序的该实例与其同步的对象。

    除非对象的复本与驱动程序位于同一台服务器上,否则驱动程序不能同步这些对象。 事实上,除非创建规则以另行指定(《范围过滤》的规则),否则,Identity Manager 驱动程序将同步在服务器上复制的所有树枝中的对象。

    例如,如果需要驱动程序与所有用户对象同步,则最简单的方法就是使用服务器上的驱动程序的一个实例,该服务器保存所有用户的主复本或读/写复本。

    但是,许多环境都没有包含所有用户复本的单台服务器。 而是整个用户集分布在多台服务器上。 在这种情况下,存在两种选择:

    • 将用户聚合到单台服务器。 可通过向现有服务器添加复本来创建保存所有用户的单台服务器。 如果需要,只要必需的用户对象和特性是已过滤复本的一部分,就可以使用已过滤复本减少 eDirectory 数据库的大小。

    • 在启用范围过滤的情况下,使用多台服务器上的驱动程序的多个实例。 如果希望将用户聚合到单台服务器,则需要确定由哪个服务器集保存所有用户,同时在其中的每个服务器上设置 Identity Manager 驱动程序的一个实例。

      为防止驱动程序的不同实例尝试与相同的用户同步,需要使用《范围过滤》来定义驱动程序的每个实例应该同步的用户。 范围过滤表示向每个驱动程序添加规则,以将驱动程序的管理范围限制到特定的树枝。请参见使用范围过滤管理不同服务器上的用户

    • 在没有启用范围过滤的情况下,使用多台服务器上的驱动程序的多个实例。 如果要使驱动程序的多个实例在不同服务器上运行且不使用已过滤复本,则需要对不同的驱动程序实例定义策略,使驱动程序能够处理相同 Identity Vault 中的不同对象集。

  • 创建用户时需要驱动程序使用的模板对象(如果选择使用模板)。

    Identity Manager 驱动程序不要求指定用于创建用户的 eDirectory 模板对象。 但是,如果指定驱动程序在 eDirectory 中创建用户时应使用模板,则必须在运行驱动程序的服务器上复制模板对象。

  • Identity Manager 驱动程序管理用户时需要使用的任何树枝。

    例如,如果创建了一个名称为《Inactive Users》的树枝以保存禁用的用户帐户,则必须在运行驱动程序的服务器上,提供该树枝的主复本或读/写复本(最好是主复本)。

  • 驱动程序需要参照的其它任何对象(例如,Avaya PBX 驱动程序的工作指令对象)。

    如果驱动程序只是读取而不是更改其它对象,则服务器上的这些对象的复本可以是只读复本。

2.3.3 使用范围过滤管理不同服务器上的用户

范围过滤表示向每个驱动程序添加规则,以将驱动程序的操作范围限制到特定的树枝。 在以下两种情况下,可能需要使用范围过滤:

  • 希望驱动程序只同步特定树枝中的用户。

    默认情况下,Identity Manager 驱动程序将同步运行该驱动程序的服务器上复制的所有树枝中的对象。 要缩小该范围,必须创建范围过滤规则。

  • 希望 Identity Manager 驱动程序同步所有用户,但不希望在同一服务器上复制所有用户。

    要同步所有用户且不在单台服务器上复制它们,需要确定由哪个服务器集保存所有用户,然后在其中的每台服务器上创建 Identity Manager 驱动程序的实例。 为防止驱动程序的两个实例尝试与相同的用户同步,需要使用《范围过滤》来定义驱动程序的每个实例应该同步的用户。

    注:即使服务器的复本当前未重叠,也应该使用范围过滤。 以后,服务器上可能会添加复本,因而在无意中产生重叠。 如果实施了范围过滤,Identity Manager 驱动程序就不会尝试同步相同的用户,即使以后向服务器添加复本,也是如此。

下面是范围过滤使用方法的范例。

下图显示了一个 Identity Vault,它带有保存用户的三个树枝: Marketing、Finance 和 Development。 同时该图还显示保存驱动程序集的 Identity Manager 树枝。 其中每个树枝都是一个独立的分区。

图 2-5 范围过滤的示例树

在此示例中,Identity Manager 管理员有两个 Identity Vault 服务器:服务器 A 和服务器 B,如下图所示。 两个服务器都不包含所有用户的拷贝。 每个服务器包含三个分区中的两个,因此服务器保存项目的范围重叠。

管理员希望通过 GroupWise® 驱动程序同步树中的所有用户,但是不希望将这些用户的复本聚合到单台服务器。 他选择使用 GroupWise 驱动程序的两个实例,两台服务器各使用一个。 他在每台 Identity Manager 服务器上安装 Identity Manager,然后设置 GroupWise 驱动程序。

服务器 A 保存 Marketing 和 Finance 树枝的复本。 同时,Identity Management 树枝的复本也在该服务器上,该树枝保存服务器 A 的驱动程序集以及服务器 A 的 GroupWise 驱动程序对象。

服务器 B 保存 Development 和 Finance 树枝的复本,同时,Identity Management 树枝也在该服务器上,该树枝保存服务器 B 的驱动程序集和服务器 B 的 GroupWise 驱动程序对象。

由于服务器 A 和服务器 B 均保存了 Finance 树枝的复本,因此这两个服务器均保存了 Finance 树枝中的用户 Jbassad。 如果不使用范围过滤,GroupWise 驱动程序 A 和 GroupWise 驱动程序 B 都会同步 Jbassad。

图 2-6 带重叠复本的两个服务器,不使用范围过滤

下图显示由于范围过滤已定义了由哪些驱动程序同步每个树枝,因此它可以防止驱动程序的两个实例管理相同的用户。

图 2-7 范围过滤定义由哪些驱动程序同步每个树枝

Identity Manager 3.0 附带了预定义规则。 有两个规则可帮助执行范围过滤。 《Policy Builder and Driver Customization Guide》(策略构建器和驱动程序自定义指南)中记录的《Event Transformation - Scope Filtering - Include Subtrees》(事件转换 – 范围过滤 – 包括子树)和《Event Transformation - Scope Filtering - Exclude Subtrees》(事件转换 – 范围过滤 – 排除子树)。

对于此示例,可以对服务器 A 和服务器 B 使用《包括子树》预定义规则。可为每个驱动程序定义不同的范围,以便它们只同步指定的树枝中的用户。 服务器 A 将同步 Marketing 和 Finance。 服务器 B 将同步 Development。