4.3 使用实体和特性

希望用户在 Identity Manager 用户应用程序中搜索、显示或编辑的任何 Identity Vault 对象都必须在目录提取层中定义为实体。 例如,若要在用户应用程序中使用 Identity Vault 对象 inetOrgPerson,必须为该对象创建一个实体定义。

4.3.1 添加实体的步骤

请按照以下步骤将实体添加至目录提取层:

步骤

任务

详细信息

1

决定要在用户应用程序中使用的 Identity Vault 对象

部分 4.3.2, 分析数据需求

2

使用目录提取层编辑器定义目录提取层中的 Identity Vault 对象

部分 4.3.3, 定义实体

3

使用供应视图验证数据定义

部分 4.8, 导入、验证和部署目录提取层定义

4

将定义部署到 Identity Vault 中

部分 4.8.3, 关于部署

5

更新应用程序服务器的超速缓存,以包含新的提取层定义

部分 13.0, 超速缓存配置

6

测试 Identity Manager 用户应用程序,以确保正确显示所做的更改

 

4.3.2 分析数据需求

要在目录提取层中创建 Identity Vault 数据模型,需要了解:

  • 希望由 Identity Manager 用户应用程序使用的目录部分

例如,用户可以搜索和显示的对象列表。 对照提取层定义的基集检查此列表,以确定需要添加的内容。

  • 包含自定义扩展和辅助类的纲要结构
  • 包括以下内容的数据结构
    • 必需的内容和可选的内容
    • 验证规则
    • 对象之间的关系(DN 参照)
    • 特性的定义方式(例如,表示电话号码的特性可能有多个值:家庭电话号码、办公电话号码和移动电话号码)
  • 查看数据的人员

    这是一个公共站点还是私人站点?

拥有这些信息后,就可以使用它们将 Identity Vault 对象映射到提取层实体。

注:eDirectory ACL 适用于所有的提取层对象。 对象和特性所具有的有效权限基于应用程序登录时所创建的已鉴定用户。

4.3.3 定义实体

根据在用户应用程序中想要显示的内容,可以定义以下两种实体:

  • 映射自纲要的实体。 这些实体表示在用户应用程序中直接呈现给用户且存在于 Identity Vault 中的对象。 定义这种类型的实体时,将显示希望用户使用的所有特性。 这种实体类型的示例包括: User(用户)、Group(组)和 Task Group(任务组)。如果想要对不同类型的用户显示不同的特性集,还可以为同一个对象创建多个实体定义。有关更多信息,请参见为单个对象创建多个实体定义
  • 表示 LDAP 关系的实体。 此类型的实体被称为 DNLookup,用户应用程序可以使用它进行以下操作:
    • 用相关实体间的 DN 搜索结果填充列表
    • 在更新和删除过程中保持 DN 参照特性之间的参照完整性

    组织结构图入口小程序使用支持 DNLookup 的实体来确定关系,并且搜索、创建和细节入口小程序还使用这些实体来提供弹出选择列表和 DN 环境。 这种类型的实体示例包括: Manager Lookup(管理员查找)、Task Manager Lookup(任务管理员查找)和 User Lookup(用户查找)。有关更多信息,请参见使用 DNLookup 控件类型

为单个对象创建多个实体定义

可以创建多个实体定义,它们虽然表示同一 Identity Vault 对象,但提供不同的数据视图。 在实体定义中可以:

  • 为每个实体定义定义不同的特性

或者

  • 定义相同的特性,但指定不同的访问属性以控制特性的搜索、查看、编辑或隐藏方式

注:实体定义还可以包含可在结果集中隐藏某些实体的过滤器。

然后就可以在用户界面的不同部分使用这些不同的实体定义。 例如,假定您希望创建员工目录;一个用于公共站点而另一个用于内部站点。 在公共站点中,希望提供名和姓以及电话号码,而在内部站点中,则希望列出附加信息,如职务、经理等。 以下是具体的创建步骤:

  1. 创建两个实体定义(具有不同的键)。

    两个实体定义都显示同一个 Identity Vault 对象,但是一个实体定义键为 public-staff-information,而另一个为 internal-staff-information。

  2. 在每个实体定义中,定义不同的特性集: 一个用于 public-staff-information,另一个用于 internal-staff-information。

  3. 使用 Identity Manager 用户应用程序的《入口小程序管理》选项卡为公共页和内部页分别创建一个入口小程序实例。

    有关创建入口小程序实例的更多信息,请参见部分 9.0, 入口小程序管理

创建实体定义的过程

确定了要显示的实体和特性后,就可以使用编辑器将它们添加到目录提取层中。 请按照以下步骤进行操作:

步骤

操作

参见此过程

1.

决定从哪组文件开始。

 

  • 想要添加至定义的基集

部分 4.3.1, 添加实体的步骤

  • 想要以已部署的定义开始

部分 4.8.1, 关于导入

1a.

希望使用的某些实体不是 eDirectory 基本纲要的一部分。 eDirectory 纲要的任何扩展都不会自动显示在编辑器的可选对象和特性列表中。 这意味着必须更新设计程序的本地纲要文件以包括这些自定义对象和特性。

要更新可用纲要要素的列表,请执行以下操作:

2.

将一个或多个实体添加到目录提取层中

添加实体

3.

将特性添加至实体

添加特性

更新可用纲要要素的列表

要更新可用纲要要素的列表,请执行以下操作:

  1. 打开 Identity Manager 项目,选择 Identity Vault,单击鼠标右键并选择 Live Operations > Import Schema(实时操作 > 导入纲要)。

  2. 选择 Import from eDirectory(从 eDirectory 导入)并提供 eDirectory 主机规格。

  3. 单击《下一步》

  4. 选择要导入的类和特性,然后单击《完成》

添加实体

可以通过《添加实体向导》(下文中介绍)或单击编辑器工具栏中的《添加实体》按钮来添加实体。

注:使用《添加实体》按钮时,系统将提示选择所创建实体的对象类。 编辑器会自动将必需特性添加到实体中。 然后可以使用《添加特性》对话框完成实体定义。

要使用《添加实体向导》添加实体,请执行以下操作:

  1. 以下列方法之一起动《添加实体向导》:

    Provisioning View(供应视图)中:

    • 选择《实体》节点,单击鼠标右键,然后选择《新建》
    • 选择《文件》>《新建》>《供应》。 选择《目录提取层实体》。单击《下一步》

    从目录提取层编辑器中:

    • 选择《实体》节点,单击鼠标右键,然后选择 New Entity-Attributes Wizard(新建实体 - 特性向导)。

      即显示《新建实体》对话框。

    注:如果从《文件》菜单中起动,对话框中将包含使用以上两种方法起动时不会显示的字段。如下图所示。

    说明:说明: 图示
  2. 根据如下介绍填写面板中的内容:

    字段

    说明

    《Identity Manager 项目》和《供应应用程序》

    选择要添加实体和特性的 Identity Manager 项目和供应应用程序。

    注:从《文件》菜单起动向导时会显示这些字段。

    实体键

    实体的唯一标识符。

    显示标签

    在用户界面中引用该实体时,就会显示该字符串。

  3. 单击《下一步》。 即显示《新建实体》对话框:

    说明:说明: 图示
  4. 选择要创建的实体的对象类,然后从《可用特性》列表中选择所需的特性

    提示:如果要创建的实体的对象类没有显示在 Available Object Classes(可用对象类)列表中,则可能需要更新设计程序的本地纲要文件。 请按照要更新可用纲要要素的列表,请执行以下操作:中的步骤进行更新。

  5. 单击《完成》

    即显示属性页以供编辑。

    有关更多信息,请参见实体的属性参照

    注:要将特性提供给用户应用程序使用,必须部署包含该特性的实体。

添加特性

要添加特性,请执行以下操作:

  1. 选择一个实体。

  2. 通过以下方法添加特性:

    • 右键单击并选择《添加特性》

    或者

    • 单击《添加特性》图标。

    将弹出下面的提示对话框:

    说明:说明: 图示
  3. Available Attributes for Entity Class(实体类的可用特性)列表中选择特性,然后将它添加到 Selected Attributes for Entity(实体的所选特性)列表中。

    提示:如果要创建的特性没有显示在《实体类的可用特性》列表中,则可能需要更新设计程序的本地纲要文件。 请按照要更新可用纲要要素的列表,请执行以下操作:中的步骤进行更新。

  4. 单击《确定》

    即显示属性页以供编辑。

    有关更多信息,请参见特性的属性参照

    注:要使特性可用于用户应用程序,必须进行部署。

实体的属性参照

可以对实体设置以下类型的属性:

实体的访问属性

访问属性 控制用户应用程序如何与实体进行交互。其中包括:

属性

说明

创建

选中 - 用户应用程序可以创建此对象。

编辑

取消选中 - 不管基础 ACL 如何,用户应用程序都无法更改此对象。

选中 - 可能能够更改此对象,但由 Identity Vault ACL 确定能否更改。

查看

选中 - 用户应用程序可以显示此对象。

去除

选中 - 用户应用程序可以删除此对象。

实体的必需属性

必需的实体属性包括:

属性名

说明

该实体的唯一标识符。 它定义了用户应用程序参照此对象的方法。

显示标签

定义用户界面中对象的显示方式。

类名

Novell Directory Service (NDS) 类名。

LDAP 名称

LDAP 对象类名称。

搜索

选中 - 可以搜索此实体。 必须选中身份入口小程序(如实体搜索列表或实体组织结构图)在查询中使用的实体 (True)。

辅助类

此实体的辅助类列表,该列表中可以没有辅助类,也可以有多个辅助类。

如果添加辅助类,必须指定辅助类的 LDAP 名称、NDS 名称以及该辅助类是否可以被搜索。

实体的搜索属性

实体的搜索属性包括:

属性名

说明

搜索树枝

搜索开始处的 LDAP 节点或树枝(搜索根)的判别名。例如:


ou=sample,o=ourOrg

可以浏览 Identity Vault 来选择树枝,也可以使用使用预定义的参数中说明的某个预定义参数。

搜索范围

指定相对于搜索根而言,在什么范围内搜索。

值为:

<默认> - 此搜索范围与选择树枝和从属树枝时的范围一样。

树枝 - 在搜索根 DN 和搜索根级别的所有项中进行搜索。

树枝和从属树枝 - 在搜索根 DN 和所有从属树枝中进行搜索。 与选择<默认>时的搜索范围相同。

对象 - 将搜索范围限定在指定的对象中。 此搜索用于验证指定的对象是否存在。

搜索时间限制 [ms]

以毫秒为单位指定一个值,或将值指定为 0 以表示没有时间限制。

最大搜索项

指定希望搜索返回的搜索结果项的最大数目。

如果要使用运行时设置,请将其指定为 0。

建议:

为达到最高效率,请将值设定在 100 到 200 之间。

不要设定超过 1000 的值

实体的创建和编辑属性

实体的创建和编辑属性包括:

属性名

定义

创建树枝

创建此类型新实体的树枝的名称。

可以浏览 Identity Vault 来选择树枝,也可以使用使用预定义的参数中说明的某个预定义参数。

如果没有指定此值,则创建入口小程序将提示用户为新对象指定树枝。 该入口小程序将使用实体定义中指定的搜索根作为基址,并允许用户从此处向下钻取。 如果实体定义中没有指定搜索根,将使用用户应用程序安装期间指定的根 DN。

命名特性

实体的命名特性(相对判别名 (RDN))。 对于选择了《创建》访问参数的实体,此值才是必需的。

替换编辑实体

编辑实体的特性显示在细节入口小程序的编辑模式下。

从下拉列表中选择实体,如果细节入口小程序没有显示此实体,请选择 <None>。

口令管理属性

口令管理属性包括:

属性名

定义

口令特性

选择将储存此实体口令的特性。

创建特性时的必需口令

选中 - 表示在创建此实体时需要口令。

使用预定义的参数

可通过目录提取层编辑器对某些值使用预定义的参数。这些参数是:

预定义的参数

说明

%driver-root%

表示供应驱动程序 DN。 在安装过程中进行用户应用程序配置时,或稍后进行配置时指定此值。 它储存在用户应用程序域配置中。

%user-root%

表示用户树枝 DN。 在安装过程中进行用户应用程序配置时,或稍后进行配置时指定此值。 它储存在用户应用程序域配置中。

%group-root%

表示组树枝 DN。在安装过程中进行用户应用程序配置时,或稍后进行配置时指定此值。 它储存在用户应用程序域配置中。

特性的属性参照

可以设置特性的以下属性:

特性的访问属性

特性的访问属性包括:

名称

说明

编辑

选中 - 可以通过用户应用程序编辑/修改此特性。 即使已将此特性选中 (True),但如果基本 Identity Vault ACL/有效权限禁止它,此特性可能仍无法编辑。

启用

取消选中 - 用户应用程序无法使用此特性。 与从文件中去除项效果相同。

隐藏

控制启用或禁用用户应用程序中的《隐藏》复选框。 用户可以使用《隐藏》复选框控制应用程序是否显示某特性(如用户的照片)。

取消选中 - 此特性的《隐藏》复选框被禁用,用户将无法选择隐藏此特性。

选中 - 可以在用户应用程序中启用《隐藏》复选框。 但登录用户还必须符合以下条件。 他们:

  • 为该特性的拥有者,或者为用户应用程序管理员。
  • 具有受托者权限,可以更新 Identity Vault 中的 srvprvHideAttributes 特性。

    如果不符合这些要求,即使选中此设置 (True),用户界面的《隐藏》复选框仍将被禁用。

提示:如果某用户隐藏了包含图像的特性,则正在查看此图像的用户仍可能继续看到此特性,直到该用户的浏览器超速缓存被刷新。

多值

指定是此特性是否可以有多个值,如电话号码。

选中 - 此特性可以有多个值。

选中 - 用户应用程序可以查询此特性。 大多数特性都会选择此属性 (True),但对某些特性(如口令)则需取消选中此属性。

必需

选中 - 必须提供此特性。

搜索

选中 - 用户应用程序可以搜索此特性。 必须选中身份入口小程序(例如,实体搜索列表或实体组织结构图)在查询中使用的特性。

提示:如果已在 eDirectory 中对搜索时使用的特性编制索引,搜索速度会更快。

查看

选中 - 用户应用程序可以显示此特性。 大多数情况下都可选中此属性,但对于某些特性(如口令)可能要取消选中此属性。

特性的必需属性

名称

说明

特性的唯一标识符。

显示标签

在用户应用程序中显示的标签。

特性名称

特性的 NDS 名称。

LDAP 名称

特性的 LDAP 名称。

特性的过滤器和格式属性

名称

说明

过滤器: WHERE 特性

可以指定在 Identity Vault 中搜索此特性的 LDAP 过滤器。

启用

选中 - 启用此过滤器。

特性的 UI 控件属性

名称

说明

数据类型

从以下列表中选择数据类型:

  • 二进制
  • 布尔值
  • DN
  • 整数
  • 本地化字符串
  • 字符串
  • 时间

格式类型

用户应用程序使用它设置数据的格式。 格式类型包括:

  • AOL IM
  • 电子邮件
  • Groupwise IM
  • 图像
  • 电话号码
  • Yahoo IM
  • 图像 URL
  • 日期
  • 日期时间

格式类型取决于数据类型。 例如,时间数据类型只能与日期格式及日期时间格式相关联。

控件类型

控件类型包括:

DNLookup - 定义此特性中包含 DN 参照。 适用于以下情况:

  • 用相关实体间的 DN 搜索结果填充列表
  • 在更新和删除过程中保持 DN 参照特性之间的参照完整性

用户应用程序使用此信息生成特殊的用户界面要素,并根据 DNLookup 定义执行优化搜索。

有关更多信息,请参见使用 DNLookup 控件类型

全局列表 - 将此特性显示为下拉列表,列表中的内容在此特性定义以外的文件中定义。

有关更多信息,请参见部分 4.4, 使用列表

本地列表 - 将此特性显示为下拉列表,列表的内容与此特性一起定义。 要定义本地列表,请执行以下操作:

  1. 选中此特性后,将控件类型设置为 Local List(本地列表)。
  2. 单击《添加》按钮可添加更多值。 使用上下箭头按钮可更改项目在列表中的位置。

    在《值》列中,键入需写入 Identity Vault 的值。 其中只能包括小写字母、数字和下划线 (_) 字符。

  3. 在《标签》列中,键入显示在用户界面中的文本。

范围 - 使用《范围》控件类型和《整数》数据类型,可将用户输入范围限制为连续值。 需要提供范围的起始和终止值。

使用 DNLookup 控件类型

如果将控件类型定义为 DNLookup,则意味着:

  • 搜索此特性时,用户可从可能的值列表中进行选择。
  • 创建、填充或删除此特性时,将根据用户操作(创建、删除、更新)相应地更新相关实体中的特性,以维持参照完整性。
用于选择列表的 DNLookup

已安装的用户应用程序中包含用户实体定义和组实体定义。 用户实体定义中又包含名为 Group 的特性,该特性被定义为 DNLookup 控件类型。 这样身份入口小程序就可以为特定用户提供组选择列表。 例如,某用户要进行目录搜索。 他想要查找组中的用户,但不知道组名。 他可以选择《用户》作为搜索对象,并将《组》设为搜索准则,如图所示:

说明:说明: 图示

由于已将《组》定义为用户实体的 DNLookup 控件类型,因此将显示《查找》图标。 如果用户选择此图标,则显示可能的组列表:

说明:说明: 图示

用户可从列表中选择某个组。

用于参照完整性的 DNLookup

由于 LDAP 允许组关系在两个方向映射,因此用于更新和同步的 DNLookup 非常重要。 例如,可以将数据设置为:

  • 用户对象中包含 group 特性。 该 group 特性:
  • 为多值
  • 列出用户所属的所有组
  • 组对象中包含 user 特性。 该 user 特性:
  • 为多值
  • 列出属于该组的所有用户

这意味着,在用户对象中可以有一个特性,显示该用户所属的所有组;在组对象中可以有一个 DN 特性,包括该组中的所有成员。

用户请求更新时,用户应用程序必须认可此关系,并确保目标特性和源特性同步。 可以在 DNLookup 中指定这两个特性必须同步。 用这种方法可以在任何相关对象之间(不仅是组结构对象)进行同步。 根据 DNLookup 关系完整性属性参照中描述的方法指定 DNLookup 高级属性,可以创建此类 DNLookup 控件类型。

DNLookup 属性参照

DNLookup 显示属性包括:

字段

定义

查找实体

要搜索的实体名称,例如,任务组实体中包含任务管理员特性。 要填充此字段,需要知道哪些用户是任务管理员。

细节实体

用户单击用户应用程序中的超文本链接以请求更多信息时,所显示的细节所属的实体键。 如果定义了 DNLookup,身份入口小程序就可以提供超文本链接,允许用户查看被链接对象的细节。

要显示的特性

选择在搜索完成后要显示的一个或多个特性。

执行自动查询

定义要显示的特性(见上)如何显示。

  • 选中 - 执行实体的自动查询,并在可选列表中显示结果。 如果返回的数据很多,用户可能不希望选择此选项,因为用户必须在一个大的结果集中滚动。
  • 取消选中 - 允许用户指定实体查询的搜索准则,然后在可选列表中显示结果。

DNLookup 关系完整性属性 - 这些属性用于同步两个对象(例如,组和组成员)之间的数据。

属性

定义

要更新的源特性

要更新的特性名称。 此特性中必须包含要更新的目标特性的 DN 参照。 要同步两个不同对象的特性,需要此属性。

要更新的目标特性

必须与要更新的源特性同时更新的特性名称。这是一个 LDAP 特性名称。 要同步两个不同对象的特性,需要此属性。 此特性必须包含一个 DN 参照。

目标辅助类(可能有)

包含要更新的目标特性的辅助类名称。