Sun Java System Identity Manager 6.0 2005Q4M3 管理指南 |
5
配置
本章介绍使用“管理员界面”设置 Identity Manager 对象的信息和步骤。
在本章中,您可以更多了解以下内容:
了解角色阅读本节可以了解有关在 Identity Manager 中设置角色的信息。
什么是角色?
Identity Manager 角色定义在其中管理帐户的资源的集合。使用角色可概要描述一类用户,从而将具有相似特征的 Identity Manager 用户划分为一组。
可将每个用户分配到一个或多个角色,或者不分配到角色。所有分配给某个角色的用户都共享访问相同基本资源组的权限。
所有与某个角色相关的资源都会间接地分配给相应用户。间接分配不同于直接分配,在直接分配中,资源是专为用户选定的。
当您创建或编辑角色时,Identity Manager 会启动 ManageRole 工作流。此工作流将新建角色或更新的角色保存在信息库中,并允许您在创建或保存该角色前插入批准或其他操作。
您可通过“管理员界面”的“创建用户”和“编辑用户”页将角色分配给用户。
创建角色
要创建角色:
“创建角色”页允许您:
编辑已分配的资源属性值
在“创建角色”页上,单击“分配的资源”区域中的设置属性值,以显示分配给该角色的每个资源的属性列表。在此“编辑”属性页中,可以为每个属性指定新值,并确定如何设置属性值。Identity Manager 允许直接设置值,或使用一个规则来设置值;它还提供用于覆盖或合并现有值的一些选项。
编辑角色
要更改角色:
查找角色
使用“查找角色”区域搜索角色。该搜索功能将返回一列与搜索条件匹配的角色。
可按以下一种或多种搜索类型搜索角色:
要搜索角色,请选择 Roles,然后选择 Find Roles。
克隆角色
可以利用现有角色的选项创建新角色。为此,请执行以下操作:
重命名角色
要重命名角色:
同步 Identity Manager 角色和资源角色
可以将 Identity Manager 角色与某资源上本地创建的角色同步。默认情况下,同步时资源被分配给角色。这适用于与任务一起创建的角色,同时也适用于现有的、与某个资源角色名匹配的 Identity Manager 角色。
在菜单栏中,选择 Tasks,然后选择 Run Tasks,以访问 Synchronize Identity Manager Roles with Resource Roles 任务页。
了解资源阅读本节的信息和过程可以帮助您设置 Identity Manager 资源。
什么是资源?
Identity Manager 资源存储关于如何连接到在其中创建帐户的资源或系统的信息。Identity Manager 资源定义有关某个资源的相关属性,并帮助指定资源信息如何在 Identity Manager 中显示。
Identity Manager 提供类型广泛的资源,包括:
资源区域
Identity Manager 在“资源”页上显示关于现有资源的信息。
要访问资源,请选择菜单栏上的 Resources。
资源按类型分组,它按照已命名的文件夹显示在列表中。要展开层次视图并查看当前已定义的资源,请单击文件夹旁的指示符。再次单击该指示符可折叠视图。
当展开资源类型文件夹后,它会动态更新并显示包含的资源对象数量(如果它是支持多个组的资源类型)。
有些资源含有可以管理的附加对象,包括:
从资源列表中选择一个对象,然后从以下某个选项列表中进行选择,以启动一个管理任务:
当您创建或编辑资源时,Identity Manager 会启动 ManageResource 工作流。此工作流将新建资源或更新的资源保存在信息库中,并允许您在创建或保存该资源前插入批准或其他操作。
管理资源列表
从资源列表中可以选择要创建的资源,而该列表可从“管理员界面”的“配置”区域管理。从 Resource Type Actions 选项列表中选择 Configure Managed Resources,以选择要用于填充资源列表的资源。
在 Managed Resources 页上,Identity Manager 将资源分为两类:
要添加自定义资源:
下表列出了自定义资源类。
创建资源
可使用资源向导创建资源。资源向导将引导您完成创建 Identity Manager 资源适配器的过程,以管理资源上的对象。
使用“资源向导”可以设置:
创建资源:
- 从 Resource Type Actions 选项列表中选择 New Resource。
Identity Manager 将显示 New Resource 页。
- 选择资源类型,然后单击 New,以显示 Resource Wizard Welcome 页。
注 也可先从资源列表中选择资源类型,然后再从 Resource Type Actions 列表中选择 New Resource。在这种情况下,Identity Manager 不会显示 New Resource 列表,而是直接启动 Resource Wizard。
- 单击下一步开始定义资源。显示的“资源向导”的步骤和页面依次为:
- 资源参数――设置控制验证和资源适配器行为的资源特定参数。输入参数,然后单击 Test Connection,以确保连接有效。在确认连接有效后,单击 Next 设置帐户属性。
图 1. 资源向导:资源参数
- 帐户属性(模式映射)――将 Identity Manager 帐户属性映射到资源帐户属性。
要添加属性,请单击添加属性。选择一个或多个属性,然后单击删除选定的属性从模式映射中删除属性。完成后,单击下一步设置身份模板。
图 2. 资源向导:帐户属性(模式映射)
- Identity Template――定义用户的帐户名称语法。此功能对分层名称空间尤其重要。
从“插入属性”列表中选择属性。要从模板中删除属性,请在列表中单击,然后从信息串中删除一个或多个项目。删除属性名称以及前导和后续的 $(美元符号)字符。
图 3. 资源向导:身份模板
- Identity System 参数――为资源设置 Identity Manager 参数,包括重试和策略配置。
图 4. 资源向导:Identity System 参数
使用下一步和上一步在页间移动。完成所有选择后,单击保存以保存该资源,并返回到列表页。
管理资源
可以通过资源列表在资源上执行一系列编辑操作。除了在每个“资源向导”页上编辑权能外,还可以:
- 删除资源――选择一个或多个资源,然后从 Resource Actions 列表中选择 Delete。可以同时选择几种类型的资源。不能删除与任何角色或资源组关联的资源。
- 搜索资源对象――选择某个资源,然后从 Resource Object Actions 列表中选择 Find Resource Object 以按对象特征查找资源对象(如组织、组织单位、组或个人)。
- 管理资源对象――对于某些资源类型,可以创建新的对象。选择资源,然后从 Resource Object Actions 列表中选择 Create Resource Object。
- 重命名资源――选择某个资源,然后从 Resource Actions 列表中选择 Rename。在出现的输入框中输入新的名称,然后单击 Rename。
- 克隆资源――选择某个资源,然后从 Resource Actions 列表中选择 Save As。在出现的输入框中输入新名称。克隆的资源以选择的名称显示在资源列表中。
使用帐户属性
Identity Manager 资源使用模式映射定义来自外部资源的属性(资源帐户属性)的名称和类型;然后它们将上述属性映射到标准 Identity Manager 帐户属性。通过建立模式映射(在“资源向导”的“帐户属性”页上),可以:
要访问这些值,请从资源列表中选择资源,然后从 Resource Actions 列表中选择 Edit Resource Schema。
模式映射的左列(标题为 Identity System User Attribute)包含 Identity Manager 帐户属性的名称,这些名称由 Identity Manager 的 Administrator 和 User 界面中使用的表单所引用。模式映射的右列(标题为“资源用户属性”)包含来自外部源的属性名称。
通过定义 Identity System 属性名称,来自不同资源的属性可以用公共名称定义。例如,在 Active Directory 资源上,Identity Manager 中的 lastname 属性被映射到 Active Directory 资源属性 sn;在 GroupWise 上,fullname 属性可以映射到 GroupWise 属性 Surname。这样,管理员仅需要填写一次 lastname 的值;当保存用户后,该值将传递给具有不同名称的资源。
资源组
使用资源区域还可以管理资源组,使您可以对资源进行分组,以按特定顺序更新这些资源。通过在组中加入资源并对资源排序,然后将组分配给用户,可确定创建、更新和删除该用户资源的顺序。
活动依次在每个资源上执行。如果某个操作在一个资源上失败,则其余资源不会被更新。这种关系类型对相关资源很重要。
例如,Exchange 5.5 资源依赖于现有的 Windows NT 或 Windows Active Directory 帐户:在可以成功创建 Exchange 帐户之前,其中之一必须存在。通过使用 Windows NT 资源和 Exchange 5.5 资源(按顺序)创建资源组,可以确保创建用户时的顺序正确。反过来,此顺序可以确保删除用户时资源按正确顺序删除。
选择 Resources,然后选择 List Resource Groups 以显示当前定义的资源组列表。在该页单击新建以定义资源组。定义资源组时,有一个选项区域允许您在选择资源后对所选资源排序,并可以选择可以使用该资源组的组织。
了解 ChangeLog阅读本节中有关 Identity Manager ChangeLog 功能的信息以及有助于配置和使用 ChangeLog 的过程。
什么是 ChangeLog?
通过 ChangeLog 可以查看 Identity Manager 资源中包含的身份属性信息。每个 ChangeLog 都定义为捕获对身份属性子集的更改。
随着资源中属性数据的更改,ActiveSync 适配器将捕获更改信息,然后将其写入 ChangeLog。然后,专为与企业资源进行交互而开发的自定义脚本将读取 ChangeLog 并更新资源。
使用 ChangeLog 可以通过自定义脚本间接与来自置备系统的资源进行通信,因而 ChangeLog 功能与 Identity Manager 的标准资源活动同步和协调功能有所不同。
ChangeLog 与安全
Identity Manager 的 ChangeLog 功能需要本地文件系统中指定目录的写入权限。默认情况下,某些 Web 容器不允许本地文件系统访问其托管的 Web 模块(如 Identity Manager)。
可以通过编辑 Java 策略文件来授予访问权限。如果将 /tmp/changelogs 用作上述指定目录,策略文件应该包含:
grant {
permission java.io.FilePermission "/tmp/changelogs/*", "read,write,delete";
};必须为指定的每个 ChangeLog 目录定义文件权限。
默认的 Java 安全策略文件位于:
$JAVA_HOME/jre/lib/security/java.policy
编辑该文件可能就已足够;但是,如果使用自己的文件(而非默认文件),则服务器运行时将使用诸如以下所示的选项:
-Djava.security.manager -Djava.security.policy=/path/to/your/java.policy
在这种情况下,编辑由 java.security.policy 系统属性标识的文件。
注 可能需要在编辑安全策略文件后重新启动 Web 容器。
ChangeLog 功能要求
ChangeLog 功能要求先配置身份属性再配置 ChangeLog。
配置身份属性
使用以下信息和过程可以配置身份属性并选择要应用身份属性的 Identity System 应用程序。
使用身份属性
要配置身份属性,请选择 Configure,然后从 Identity Manager Administrator 界面中选择 Identity Attributes。将显示 Identity Attributes 页。
要添加身份属性,请单击 Add Attribute。将身份属性添加到列表中后,可以通过在列表中单击其名称予以编辑。要删除一个或多个身份属性,请选中相应属性,然后单击 Remove Selected Attributes。
注 在单击 Save 后,操作才会生效。
选择应用程序
使用 Enabled Applications 区域选择要应用身份属性的 Identity System 应用程序。从 Available Applications 区域中选择一个或多个应用程序,然后将其移至 Enabled Applications 区域。在单击 Save 后,操作才会生效。
注 要使用 ChangeLog 功能,必须启用 ActiveSync 应用程序。
添加和编辑身份属性
在 Add Identity Attributes 页或 Edit Identity Attributes 页中,进行以下选择以添加或编辑身份属性:
- Attribute Name――选择或输入属性名称。从所提供的默认值中进行选择(从资源模式映射条目、可操作的身份属性和用户扩展的属性中选择);或在文本框中输入值。
- Sources――选择一个或多个源,用于填充此身份属性的值。将按顺序对源进行评估,然后将身份属性设置为第一个非 null 值。
- Attribute Properties――使用此区域可以设置身份属性的属性。
- Targets――选择将设置此身份属性的目标资源。如果未指定任何目标,则单击 Add Target。要从列表中删除目标,请选择相应目标,然后单击 Remove Selected Targets。
单击 OK 添加身份属性并返回至 Identity Attributes 页。必须单击 Identity Attributes 页上的 Save 才能保存添加的身份属性。
添加目标资源
提示 如果仅将身份属性用于 ChangeLog,则不必为身份属性设置目标。例如,如果要使用 ChangeLog,但还要使用标准的“输入表单”来通过 ActiveSync 推送数据,则可以为身份属性设置目标。如果没有任何目标,则 MetaView 将仅计算身份属性的值,而不会对任何其他资源设置这些身份属性。
进行选择以添加要设置身份属性的目标资源:
- Target Resource――选择将设置选定身份属性的目标资源。
- Target Attribute――选择将取得该值的目标资源属性的名称。
- Condition――选择要运行的规则,此规则用于确定是否要对此目标资源设置选定的身份属性。此规则将返回值 true 或 false。如果未设置条件,则始终会对选定的事件类型设置目标属性。
- Apply To:――选择事件类型,将针对这些类型对此目标资源设置选定的身份属性。这些选项与 Condition 共同确定是否应设置目标属性。
单击 OK 以添加目标资源并返回至 Add Identity Attribute 页或 Edit Identity Attribute 页。
删除目标资源
要删除一个或多个目标资源,请在列表中选择相应目标资源,然后单击 Remove Selected Targets。
导入身份属性
使用导入身份属性功能可以选择一个或多个要用于导入和填充身份属性值的表单。Identity Manager 将分析导入的表单值,然后通过“最佳猜测”推测出身份属性;但是,在导入后可能需要编辑身份属性。
选择以下导入选项:
- Merge with existing Identity Attributes――如果选择此选项,Identity Manager 会将导入的值与现有身份属性合并。如果未选择此选项,则会先清除身份属性再进行导入。
- Forms to import――从 Available Forms 区域中选择一个或多个表单填充身份属性。
单击 Import 导入表单。将显示 Identity Attributes 页,其中列出新的身份属性或合并的身份属性。
单击 Save 保存对身份属性的更改。
注 如果有身份属性条件需要更正,Identity Manager 将显示 Warning 页,其中列出一条或多条警告。单击 OK 可以返回至 Configure 区域。
配置 ChangeLog
可以通过创建 ChangeLog 策略和 ChangeLog 来配置 ChangeLog。每个 ChangeLog 都必须有关联的 ChangeLog 策略。ChangeLog 定义更改子集,其中的更改由 ActiveSync 检测到并通过身份属性来推送,应写入日志。与其关联的 ChangeLog 策略定义写入 ChangeLog 文件的方式。自定义脚本将使用 ChangeLog 文件。
要配置 ChangeLog 和 ChangeLog 策略,请选择 Configure,然后从 Administrator 界面菜单栏中选择 ChangeLogs。
Identity Manager 将显示 ChangeLog Configuration 页,其中有两个摘要区域。
图 5. ChangeLog Configuration
ChangeLog 策略摘要
ChangeLog policies 摘要区域显示当前已定义的 ChangeLog 策略。要编辑现有 ChangeLog 策略,请在列表中单击其名称。要创建新 ChangeLog 策略,请单击 Create Policy。
要删除一项或多项 ChangeLog 策略,请在列表中选择相应的策略,然后单击 Remove Policy。(无需确认即可执行此操作。)
ChangeLog 摘要
ChangeLog 摘要区域显示当前已定义的 ChangeLog。要编辑现有 ChangeLog,请在列表中单击其名称。要创建新 ChangeLog,请单击 Create ChangeLog。
要删除一个或多个 ChangeLog,请在列表中选择相应的 ChangeLog,然后单击 Remove ChangeLog。(无需确认即可执行此操作。)
保存对 ChangeLog 配置的更改
必须在 ChangeLog Configuration 页中保存对 ChangeLog 配置(即 ChangeLog 策略或定义的 ChangeLog)进行的所有更改。单击 Save 保存更改并返回至 Identity Manager Configure 页。
创建和编辑 ChangeLog 策略
在 Edit ChangeLog Policy 页上输入内容或进行选择,可以创建或编辑 ChangeLog 策略:
- Policy Name――输入策略的唯一名称。
- Daily Start Time――确定每天的时间,用于计算轮转开始或发生更改的时间。使用此策略的 ChangeLog 将于此时开始新轮转,并从此时起每隔一个计算的时间增量开始一次新轮转。例如,如果开始时间设置在午夜 (00:00),"Rotations Per Day" 为 3,则日志文件的前缀将在 00:00、08:00 和 16:00 发生变化。
系统将按以下模式命名文件:"cl_User_yyyyMMddHHmmss.n.suffix",其中 "HHmmss" 是轮转最近一次开始的时间。(".n" 是序列号,".suffix" 是在 ChangeLog 定义中提供的后缀。)
使用 "00:00" 作为开始时间并且每天轮转次数为 3 时,如果要在某天上午 9:24 激活 ChangeLog,则产生的轮转名称将包含最近的轮转开始时间(如 08:00)。在这种情况下,文件名将以 cl_User_yyyyMMdd080000 开头。新轮转(文件名的新前缀)将在 16:00 开始。
- Rotations Per Day――指定每天要轮转日志的次数。例如,如果要每隔 4 小时轮转一次,请输入值 6。
此值必须为非负整数。值 0 表示忽略此字段。如果此字段的值不是零,则会忽略 "Maximum Age of a Rotation" 设置。
如果以秒为单位指定轮转的时间,并且 "Rotations Per Day" 字段的值为 0,则轮转时间值将用于确定轮转的周期。
此值必须为非负整数。如果在 "Rotations Per Day" 字段中指定了非零值,则会使用该值(不会使用轮转时间值)。如果这两个字段的值都是 0,将仅应用序列信息。(这种情况下甚至不使用 Daily Start Time 的值。)
- Number of Rotations to Keep――指定在 Identity Manager 删除轮转允许累积的轮转次数。例如,如果每天轮转 3 次,并且要在日志中保存 2 天的更改,请指定值 6。
- Maximum File Size in Bytes――如果要向当前文件中写入的更改将超出此限制,则会启用一个新的日志文件(其轮转前缀相同,但序列号不同)。值 0 表示不使用此限制。所有非零限制字段(大小、行数、使用期限)都将被使用;但是,系统将先检查此限制再检查其他限制。
- Maximum File Size in Lines――如果写入更改会使当前文件的行数超出此限制,则会创建一个新序列文件,超出的行将写入新文件。值 0 表示“无限制”。系统将在大小限制后和使用期限限制前检查此限制。
- Maximum File Age in Seconds――如果收到更改并且现有序列文件的使用期限已超过此处指定的秒数,则系统将先创建一个新序列文件再写入更改。值 0 表示不采用此限制。系统将先应用其他非零限制再应用此限制。
单击 OK 可以返回至 ChangeLog Configuration 页。必须在 Configuration 页中单击 OK 才能保存新 ChangeLog 策略或对现有策略的更改。
创建和编辑 ChangeLog
在 Edit ChangeLogs 页中输入内容和进行选择,可以创建或编辑 ChangeLog:
- ChangeLog Name――输入 ChangeLog 的唯一名称。
- Active――如果选择此选项,则 ChangeLog 将在系统通过 ActiveSync 资源将更改传入身份属性时监视并写入更改(必须将 ActiveSync 作为身份属性应用程序,才能进行此操作)。
- Filter――输入要使用的 ChangeLog 过滤器的名称。"Noop" 表示使用默认过滤器,即接受所有更改。对于大多数情况,这已足够。否则,必须输入实现 com.sun.idm.changelog.ChangeLogFilter 的 Java 类的名称。该类必须在服务器的类路径内,并且必须具有一个默认公共构造函数。
- Log these Operations――记录选定类型的事件,包括创建、更新和删除。未选定的事件将被忽略。
- ChangeLog View――使用此表可以定义 ChangeLog 的内容(列)。表中每行都将指定 ChangeLog 中的列。单击 Add Column 添加 ChangeLog 列。每列都有名称、类型和身份属性名称。行的顺序将表明列的顺序。定义列之后,可以使用 "Up" 和 "Down" 按钮来调整列的顺序。
注 在每个 ChangeLog 中名为 "changeType" 的表内,第一列都是隐藏的。隐藏的第一列指示更改的类型。此列的类型为“文本”。日志中的数据将使用以下一种值:"ADD"、"MOD" 或 "DEL"。
- Use the Policy Named――从列表中选择用于日志记录的已定义 ChangeLog 策略。
- Output Path――输入文件系统中的目录的名称,该目录中将包含日志文件。该目录可以在网络中的非本地位置;但最好使用服务器的本地目录。建议仅在每个位置只存储一个 ChangeLog。
- Suffix――输入用于 ChangeLog 文件的后缀(如 .csv)。可以用选定的后缀来区分这些文件和其他 ChangeLog 文件。
单击 OK 可以返回至 ChangeLog Configuration 页。必须在 Configuration 页中单击 OK 才能保存新 ChangeLog 或对现有 ChangeLog 的更改。
示例
请查看此示例,其中详细说明了如何设置身份属性和用于捕获属性数据特定集合的 ChangeLog。
示例:定义身份属性
在此示例中,两个 Identity Manager 资源(资源 1 和资源 2)向第三个资源(资源 3)提供源数据。资源 3 未与 Identity Manager 系统直接连接。需要建立一个 ChangeLog,以便从资源 1 和资源 2 送往资源 3 的数据中拉取并维护一个数据子集。
资源 1:EmployeeInfo
employeeNumber*
givenname
mi
surname
phone资源 2:OrgInfo
employeeNum*
managerEmpNum
departmentNumber资源 3:PhoneList
empId*
fullname
phone
department
注 * 表示用于关联记录的关键字。
身份属性的定义如下。
示例:配置 ChangeLog
在定义身份属性之后定义名为 PhoneList ChangeLog 的 ChangeLog。该 ChangeLog 用于将身份属性子集写入 ChangeLog 文件。
PhoneList ChangeLog 中的 ChangeLogView
资源 1 或资源 2 中的记录发生更改时,系统会将 ChangeLog 记录(来自身份属性的所有数据)的整个数据集合(不只是更改)写入该 ChangeLog。自定义脚本将读取该信息并用其填充资源 3。
CSV 文件格式
对于 ChangeLog 写入的以逗号分隔值 (comma-separated value, CSV) 文件,阅读本节可以了解有关其格式的信息。
请考虑由行和列构成的 ChangeLog 文件,如电子表格或数据库表。每“行”就是文件中的一行。
ChangeLog 格式使用前两行描述其自身。这两行共同定义“模式”,即表中每个“单元”(行中逗号之间的值)的逻辑名称和逻辑类型。
第一行指定文件中属性的名称。第二行描述属性值的类型。其他行显示更改事件的所有数据。
ChangeLog 文件以 Java UTF-8 格式编码。
列
文件中的第一列具有特殊意义。此列用于定义操作类型;例如,更改事件是创建操作、修改操作还是删除操作。该列的名称始终为 changeType,类型始终为 T(表示文本)。该列中的值为以下一种:ADD、MOD 或 DEL。
仅有一列中应显示条目的唯一标识符(主关键字), 通常为文件中的第二列。
其他列仅用于命名属性。该名称是取自 ChangeLog View 表内的列名称值。
行
除定义文件“模式”的前两个标题行外,其余的行都显示属性的值。这些值按第一行中的列顺序显示。ChangeLog 从身份属性应用,因而包含在删除更改时有关用户的所有已知数据。
此外,其中没有表示 null(或未设置)的特殊标记值。如果检测到更改时没有发现值,ChangeLog 将写入一个空字符串。
值根据文件第二行指定的列类型编码。支持的类型包括:
文本值
文本值以字符串的形式写入,有两种例外:
文本值不能含有换行符。如果文件需要换行符,请使用二进制值类型。
二进制值
二进制值以 Base64 编码。
多文本值
多文本值的写入方式类似于文本值,但这种值以逗号分隔,两侧有方括号(使用 [ 和 ])。
多二进制值
多二进制值的写入方式类似于二进制值(以 Base64 编码),但这种值也以逗号分隔,两侧有方括号(使用 [ 和 ])。
格式设置示例
以下示例说明了各种输出格式。每个示例的格式如下:
column1,column2,column3,column4
每个示例的第 3 列显示示例文本。
ChangeLog 文件名
文件名的格式如下:
servername_User_timestamp.sequenceNumber.suffix
其中:
配置轮转和序列
轮转和序列在 ChangeLogPolicy 对象中定义,从 ChangeLog 中引用。
示例
某项策略将轮转定义为:
该策略产生的文件名类似于以下名称。(其中每次轮转中都有两个序列文件。)
myServer_User_20060101070000.1.csv
myServer_User_20060101070000.2.csv
myServer_User_20060101150000.1.csv
myServer_User_20060101150000.2.csv
myServer_User_20060101230000.1.csv
myServer_User_20060101230000.2.csvmyServer_User_20060102070000.1.csv
myServer_User_20060102070000.2.csv
myServer_User_20060102150000.1.csv
myServer_User_20060102150000.2.csv
myServer_User_20060102230000.1.csv
myServer_User_20060102230000.2.csv可见,1 月 1 日有 3 次轮转,每次间隔 8 小时,从 07:00:00 开始。1 月 2 日 与此类似,仅名称中与日 (20060102) 对应的部分不同。
编写 ChangeLog 脚本
阅读本节可以了解有关有助于编写 ChangeLog 脚本的信息。
- 脚本很可能会持续运行,等待新数据、新文件或在无活动时休眠;然后只是读取文件并将每行的更改应用于后端资源。
- 通过 ChangeLog 可以删除操作;但 DEL 行中将只有 accountId 值。
- 使用轮转和序列可以确定运行脚本的频率。例如,可以指定:
- 可以将每个 ChangeLog 都视为表示后端系统中的记录。为便于脚本读取日志,Identity Manager 始终写入给定记录的所有数据(不论其是否已更改)。脚本可以“盲目”地在记录中应用数据。
但它们需要确保后端资源(或脚本)可以进行以下两种操作之一(尤其是对于 ADD 和 DEL):
- 一种可取的方法可能是待序列文件出现后应用先前的文件。例如,在 .2 文件出现后应用 .1 文件。在 .3 文件出现后,应用 .2。应用文件后,请记录您已对磁盘进行此操作。通过这种方法可以避免使用 fstat 或
tail -f 等调用。
了解策略阅读本节可以了解配置策略的信息和过程。
什么是策略?
Identity Manager 策略通过建立 Identity Manager 帐户 ID、登录和密码特征的限制,对 Identity Manager 用户设置限制。
可在“策略”页创建和编辑 Identity Manager 策略。在菜单栏中选择 Configure,然后选择 Policies。在显示的列表页中,可以编辑现有策略和创建新的策略。
策略分为以下类别:
- Identity System 帐户策略――建立用户、密码以及验证策略选项和限制。通过 "Create Organization" 和 "Edit Organization" 页以及 "Create User" 和 "Edit User" 页,可以将 Identity System 帐户策略分配给组织或用户。
图 6. Identity Manager 策略
可以设置或选择的选项包括:
- 字符串质量策略――字符串质量策略包括密码、帐户 ID、验证等策略,可以设置长度规则、字符串类型规则,还可以设置允许的字词和属性值。此策略类型绑定到每个 Identity Manager 资源,并在每个资源页上进行设置。
图 7. 创建/编辑密码策略
可以为密码和帐户 ID 设置的选项和规则包括:
字典策略
字典策略使 Identity Manager 可以对照字词数据库检查密码,以确保密码不会轻易受到字典攻击。Identity Manager 通过将此策略与其他策略设置结合使用的方式来强制设定密码的长度和组成,从而使利用字典也很难猜出在系统中生成或更改的密码。
字典策略扩展了能够用该策略进行设置的密码排除列表。(此列表是使用“管理员界面”密码“编辑策略”页中的“不得包含词”选项实现的。)
配置字典策略
要设置字典策略,必须:
请按照以下步骤操作:
- 在菜单栏中选择 Configure,然后选择 Policies。
- 单击配置字典显示“字典配置”页。
- 选择并输入数据库信息:
- Database Type――选择用于存储字典的数据库类型(Oracle、DB2、SQLServer 或 MySQL)。
- Host――输入数据库正在其中运行的主机的名称。
- User――输入连接到数据库时要使用的用户名。
- Password――输入要在连接数据库时使用的密码。
- Port――输入数据库正在侦听的端口。
- Connection URL――输入要在连接时使用的 URL。可使用以下模板变量:
- Driver Class――输入与数据库交互时使用的 JDBC 驱动程序类。
- Database Name――输入将要加载字典的数据库名称。
- Dictionary Filename――输入要在加载字典时使用的文件名。
- 单击测试,测试数据库连接。
- 如果连接测试成功,请单击加载词以加载字典。
注 加载任务可能需要几分钟才能完成。
- 单击测试,确保正确地加载字典。
实现字典策略
从 Identity Manager 策略区域实现字典策略。在“策略”页中单击以编辑密码策略。在“编辑策略”页中,选择“根据字典的词检查密码”选项。字典策略实现后,系统会根据字典来检查所有更改的或生成的密码。
了解权能权能是 Identity Manager 系统中的权限组。权能代表管理作业职责(如重设密码或管理用户帐户)。每个 Identity Manager 管理用户都分配有一个或多个权能,这些权能提供了一组权限而不会损害数据保护。
并非所有 Identity Manager 用户都需要分配有权能;而只有那些要通过 Identity Manager 执行一项或多项管理操作的用户才需要。例如,使用户可以更改自己的密码并不需要为用户分配权能,但要更改其他用户的密码就需要分配权能。
分配的权能决定了您可以访问 Identity Manager 的“管理员界面”的哪些区域。所有 Identity Manager 管理用户都可以访问 Identity Manager 的一定区域,包括:
权能类别
Identity Manager 将权能定义为:
内置权能(随 Identity Manager 系统提供的权能)是受保护的权能,即,不能对它们进行编辑。但是,可以在创建的权能中使用它们。
受保护的(内置)权能在列表中以红色钥匙(或红色钥匙和文件夹)图标指示。创建和可编辑的权能在权能列表中以绿色钥匙(或绿色钥匙和文件夹)图标指示。
使用权能
创建权能
要创建权能,请单击新建。
编辑权能
要编辑未受保护的权能,请在列表中右键单击,然后选择编辑。
注 不能编辑内置权能;但是,可以用其他名称保存,以创建您自己的权能或在您创建的权能中使用它们。
保存和重命名权能
要“克隆”权能(用其他名称保存权能以创建新的权能):
您可以对这个新权能进行编辑,即使复制的权能是受保护的。
分配权能
从“创建用户”和“编辑用户”页为用户分配权能。
注 还可以通过分配管理员角色(通过“安全”区域设置),将权能分配给用户。更多信息,参见了解管理员角色。
权能分层结构
基于任务的权能包含在以下功能性权能分层结构中:
帐户管理员
管理员角色管理员
批量帐户管理员
批量更改帐户管理员
权能管理员
更改帐户管理员
导入/导出管理员
登录管理员
组织管理员
密码管理员(需要进行验证)
策略管理员
协调管理员
Remedy 集成管理员
报告管理员
资源管理员
资源对象管理员
资源密码管理员
角色管理员
安全管理员
查看组织
查看资源
Waveset 管理员
权能定义
下表说明了每个基于任务的权能并着重说明每个权能可访问的选项卡和子选项卡。
所有权能都授予用户或管理员访问更改我的密码和更改我的回答子选项卡(密码选项卡)的权限。
表 1. Identity Manager 权能描述
了解管理员角色管理员角色可以实现为管理员管理的每个组织集合分配唯一的一组权能。可为管理员角色分配权能和受控组织;然后可将该角色分配给管理用户。
为管理员角色分配权能和组织的方式可以是:
- Direct――此选项允许将特定权能、受控组织或这两者分配给管理员角色。
- Dynamic(间接)――此选项使用权能和受控组织规则动态确定,在接受分配的用户每次登录 Identity Manager 时,通过管理员角色为他提供的权能和受控组织。
注 有关设置上述规则的关键信息,请参见权能规则和受控组织规则。
可以为每个用户分配一个或多个管理员角色。一个管理员角色可分配给一个或多个
用户。用户管理员角色
Identity Manager 中包括名为“用户”的内置管理员角色。默认情况下,该角色不包含任何权能或受控组织分配,无法删除。这种管理员角色在登录时隐式分配给所有用户(最终用户和管理员)。
可以通过 Administrator 界面编辑用户管理员角色(选择 Configure,然后再选择 Admin Roles)。
因为通过这种管理员角色静态分配的所有权能或受控组织都将分配给所有用户,所以建议通过规则来分配权能和受控组织。这会使不同的用户能够拥有不同的权能或没有权能,分配范围将取决于用户身份、所属部门或是否为管理人员,可以在规则的上下文中查询这些信息。
用户管理员角色不会使工作流中使用的 authorized=true 标志过时,也不会取而代之。对于工作流(正在执行的工作流除外)所访问的对象,如果用户不拥有访问权限,这种标志将仍然适用。这本质上是使用户可以进入“以超级用户身份运行”模式。
但是,如果用户对工作流外的一个或多个对象拥有特定访问权限,并且可能对工作流内的一个或多个对象拥有这种权限,通过用户管理员角色进行的权能和受控组织动态分配将能够实现对这些对象进行动态细化授权。
示例
以下示例中的步骤将显示如何在动态环境中使用用户管理员角色。
如果用户登录,则:
- 如果其 Active Directory 用户角色为 "manager",则系统会为其分配“帐户管理员”权能和对 "My Team" 组织的控制权。
- 如果其 AD 用户角色不是 "manager",则系统不会为其分配任何权能或要控制的组织。
- 如果登录用户的角色是 "manager",则打开 "My Team" 组织时,"Get My Team" 规则将调用 Active Directory 资源中的 getResourceObject,该 Active Directory 资源请求 "manager" 为当前已登录用户的 accountInfo.accounts[AD].accountId 的所有用户。
这种设置将使登录到 User 界面中的管理人员能够管理其雇员,并防止雇员在登录到 User 界面中时执行管理功能。
创建和编辑管理员角色
要创建或编辑管理员角色,您必须分配有“管理员角色管理员”权能。要访问管理员角色区域,请单击配置,然后单击管理员角色。“管理员角色”列表页允许创建、编辑和删除 Identity Manager 中的管理员角色。
要编辑现有管理员角色,请单击列表中的名称。单击新建以创建管理员角色。Identity Manager 显示“创建管理员角色”页,您可以在其中指定新管理员角色的权能和范围。
图 8. 管理员角色:创建页
限定受控组织范围
对于包括在管理员角色中的每个直接分配和受控的组织,可以定义用户可以操作的对象范围。可以选择包括或排除通常对该用户控制的每个组织都可用的一个或多个对象。
例如,对于能够在包含大范围资源的某个组织内创建、更新和删除用户的用户,可将其访问权限限定为该组织内的某个特定资源子集。为此,您可以创建一个具有以下特征的管理员角色:
为此,请在“创建管理员角色”页的“选择要从选定组织包含/排除的对象”区域中进行选择。
图 9. 管理员角色:受控组织的添加/排除选项
如果添加和排除列表中都包含某个项目,则该项目将从管理员角色中排除。
将用户表单分配给管理员角色
您可将用户表单指定为管理员角色属性。分配了该管理员角色的管理员将在创建或编辑由该管理员角色控制的组织的用户时使用此用户表单。通过管理员角色分配的用户表单将覆盖从该管理员所在组织继承的任何用户表单。不会覆盖直接分配给该管理员的用户表单。
将按以下优先级顺序来决定编辑用户时要使用的用户表单:
如果为该管理员分配了多个管理员角色,这些角色控制相同的组织,但指定不同的用户表单,则在管理员尝试创建或编辑这些组织中的用户时会显示错误消息。如果管理员尝试分配两个或多个管理员角色,这些角色控制相同的组织,但指定不同的用户表单,则会显示错误消息。如果未解决此冲突,则不能保存变更。
权能规则和受控组织规则
以下示例描述了如何设置权能规则或受控组织规则,这些规则能够动态控制为分配有管理员角色的用户提供的已分配权能或受控组织。
注 有关在 Identity Manager 中创建和使用规则的信息,请参见《Identity Manager 部署工具》。
权能规则:关键定义和包含项
- 权能规则必须包含 authType='CapabilitiesRule' 条目。这是确保可以从管理员角色页选择该规则的必需条件。
- 环境是目前已验证的 Identity Manager 用户的用户视图。
- 在下面的示例规则中,已定义的变量 (defvar) "user groups" 在名为 "ranger-AD" 的 Windows Active Directory 服务器上获得了当前已验证的 Identity Manager 用户的帐户,并返回该用户当前所属组的列表。
- 条件逻辑 (cond) 检查当前已验证的 Identity Manager 用户是否是 "manager" 组的成员。如果是该组成员,则分配给该用户 Identity Manager 的“登录管理员”和“资源管理员”权能。如果不是该组成员,则不分配任何 Identity Manager 权能。
权能规则示例
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE Rule PUBLIC 'waveset.dtd' 'waveset.dtd'>
<Rule authType='CapabilitiesRule' name='If Manager'>
<block>
<defvar name='user groups'>
<get>
<invoke name='getResourceObject' class='com.waveset.ui.FormUtil'>
<ref>context</ref>
<s>ranger-AD</s>
<s>User</s>
<ref>accountInfo.accounts[ranger-AD].accountId</ref>
<map>
<s>searchAttrsToGet</s>
<list>
<s>memberOf</s>
</list>
</map>
</invoke>
<s>user.attributes.memberOf</s>
</get>
</defvar>
<cond>
<contains>
<ref>user groups</ref>
<s>CN=manager,DC=dev-ad,DC=waveset,DC=com</s>
</contains>
<list>
<s>Login Administrator</s>
<s>Resource Administrator</s>
</list>
</cond>
</block>
<MemberObjectGroups>
<ObjectRef type='ObjectGroup' id='#ID#ObjectGroup:Waveset' name='Waveset'/>
</MemberObjectGroups>
</Rule>
受控组织规则:关键定义
- 受控组织规则必须包含 authType='ControlledOrganizationsRule' 条目。这可以使您从管理员角色页选择该规则。
- 环境是目前已验证的 Identity Manager 用户的用户视图。
- 在下面的示例规则中,已定义的变量 (defvar) "user groups" 在名为 "ranger-AD" 的 Windows Active Directory 服务器上获得了当前已验证的 Identity Manager 用户的帐户,并返回该用户当前所属组的列表。
- 条件逻辑 (cond) 检查当前已验证的 Identity Manager 用户是否是 "manager" 组的成员。如果是该组的成员,则分配给该用户对 Identity Manager "Waveset" 组织的控制权。如果不是该组成员,则不分配任何组织控制权。
受控组织规则示例
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE Rule PUBLIC 'waveset.dtd' 'waveset.dtd'>
<Rule authType='ControlledOrganizationsRule' name='Get managed departments'>
<block>
<defvar name='user groups'>
<get>
<invoke name='getResourceObject' class='com.waveset.ui.FormUtil'>
<ref>context</ref>
<s>ranger-AD</s>
<s>User</s>
<ref>accountInfo.accounts[ranger-AD].accountId</ref>
<map>
<s>searchAttrsToGet</s>
<list>
<s>memberOf</s>
</list>
</map>
</invoke>
<s>user.attributes.memberOf</s>
</get>
</defvar>
<cond>
<contains>
<ref>user groups</ref>
<s>CN=manager,DC=dev-ad,DC=waveset,DC=com</s>
</contains>
<list>
<s>Waveset</s>
</list>
</cond>
</block>
<MemberObjectGroups>
<ObjectRef type='ObjectGroup' id='#ID#ObjectGroup:Waveset' name='Waveset'/>
</MemberObjectGroups>
</Rule>
了解电子邮件模板Identity Manager 使用电子邮件模板将信息和操作请求提交给用户和批准者。本系统包括以下用途的模板:
- 帐户创建批准――向批准者发送通知,告知有新帐户等待其批准。当相关角色的“提供通知选项”设置为批准时,系统发送此通知。
- 帐户创建通知――发送通知,告知已经用特定角色分配创建了一个帐户。当在“创建角色”或“编辑角色”页的“通知收件人”字段中选择了一个或多个管理员时,系统会发送此通知。
- 密码重设――发送 Identity Manager 密码重设通知。根据为相关 Identity Manager 策略选择的“重设通知选项”值,系统会立即(在 Web 浏览器中)为重设密码的管理员显示通知,或者向密码将被重设的相应用户发送电子邮件。
- 密码同步通知――通知用户已成功完成对所有资源的密码更改。这种通知将列出已成功更新的资源,还将指明密码更改请求的来源。
- 密码同步失败通知――通知用户未成功完成对所有资源的密码更改。这种通知将列出错误,还将指明密码更改请求的来源。
- 协调帐户事件、协调资源事件、协调摘要――分别由“通知协调响应”、“通知协调启动”和“通知协调完成”默认工作流调用。通知按照在每个工作流中的配置发送。
- 报告――向指定的一列收件人发送生成的报告。
- 请求资源――向资源管理员发送通知,告知某个资源已被请求。当管理员从“资源”区请求资源时,系统会发送此通知。
- 重试通知――向管理员发送通知,告知已对某个资源尝试了指定次数的特定操作,但未成功。
- 风险分析――发送风险分析报告。当一个或多个电子邮件收件人被指定为资源扫描的组成部分时,系统会发送此报告。
- 临时密码重设――向用户或角色批准者发送通知,告知已经为帐户提供了临时密码。根据为相关 Identity Manager 策略选择的“密码重设通知选项”值,系统会立即(在 Web 浏览器中)为用户显示通知,发送电子邮件给用户,或者发送电子邮件给角色批准者。
自定义电子邮件模板
可以通过自定义电子邮件模板为收件人提供具体指导,告诉他如何完成一项任务或查看结果。例如,您可能想要自定义“帐户创建批准”模板以将批准者引导到帐户批准页:
请转至 http://host.example.com:8080/idm/approval/approval.jsp,以批准 $(fullname) 的帐户创建。
要自定义“帐户创建批准”模板:
电子邮件模板中的 HTML 和链接
可以在电子邮件模板中插入 HTML 格式的内容,使之在电子邮件消息正文中显示。内容可以包括文本、图形以及信息的 Web 链接。要启用 HTML 格式的内容,请选择“启用 HTML”选项。
电子邮件正文中允许使用的变量
也可以在电子邮件模板正文中包括变量的引用,格式为 $(Name);例如:您的密码 $(password) 已恢复。
下表定义了每个模板允许使用的变量。
表 2. 电子邮件模板变量
审计组配置设置审计配置组使您可以记录和报告您选择的系统事件。
要配置审计配置组,请在菜单栏中选择 Configure,然后选择 Audit Events。
“审计事件”页显示审计配置组的列表,每个列表可包含一个或多个事件。对于每个组,您可记录成功事件、失败事件或两者都记录。
单击列表中的审计配置组以显示“编辑审计配置组”页。此页允许您选择审计事件的类型,将在系统审计日志的审计配置组中记录这些类型。
编辑审计配置组中的事件
要编辑组中的事件,您可为对象类型添加或删除操作。要这样做,请将“操作”列中的项目从该对象类型的“可用”区域移动到”选定的”区域,然后单击“确定”。
为审计配置组添加事件
要在组中添加事件,请单击 New。Identity Manager 将事件添加到页的底部。从列表的“对象类型”列中选择一个对象类型,然后将“操作”列中的一个或多个项目从新对象类型的“可用”区域移动到”选定的”区域。单击“确定”将事件添加到该组。
Remedy 集成可以将 Identity Manager 与 Remedy 服务器集成,从而使之能够根据指定的模板发送 Remedy 票证。
在“管理员”界面的两个区域设置 Remedy 集成:
Remedy 票证的创建是通过 Identity Manager 工作流配置的。根据您的偏好,可以在使用已定义模板的合适时间执行调用,以打开 Remedy 票证。有关配置工作流的详细信息,请参见《Identity Manager 工作流、表单和视图》。
配置 Identity Manager 服务器设置可编辑特定于服务器的设置,以使 Identity Manager 服务器仅运行特定任务。为此,请选择 Configure,然后选择 Servers。
要编辑单个服务器的设置,可在“配置服务器”页的列表中选择一个服务器。Identity Manager 显示“编辑服务器设置”页,可在其中编辑协调程序和调度程序设置。
协调程序设置
默认情况下,协调程序设置显示在 Edit Server Settings 页上。您可接受默认值或取消选择“使用默认值”选项以指定一个值:
调度程序设置
在“编辑服务器设置”页上单击调度程序以显示调度程序选项。您可接受默认值或取消选择“使用默认值”选项以指定一个值:
单击保存可以保存对服务器设置的更改。
编辑默认服务器设置
“默认服务器设置”功能使您可设置所有 Identity Manager 服务器的默认设置。除非您在各个服务器设置页上进行了不同的选择,否则服务器将继承这些设置。要编辑默认设置,请单击编辑默认服务器设置。“编辑默认服务器设置”页显示与各个服务器设置页相同的选项。
除非您已取消选择该设置的“使用默认值”选项,否则对每个默认服务器设置的更改会应用到对应的服务器设置。
单击保存可以保存对服务器设置的更改。
签名的批准可以使用以下信息和过程来设置数字签名的批准。步骤和示例适用于:
配置签名的批准
可以按以下步骤配置签名的批准。
服务器端配置
启用服务器端配置:
- 在系统配置中设置 security.nonrepudiation.signedApprovals=true
- 将证书颁发机构 (certificate authority, CA) 的证书添加为信任证书。为此,必须首先获得证书的副本。
例如,如果要使用 Microsoft CA,请按类似以下的步骤操作:
- 将证书作为信任证书添加到 Identity Manager 中:
- 添加 CA 的证书废除列表 (certificate revocation list, CRL):
- 单击 Test Connection 验证 URL。
- 单击保存。
- 可以使用 jarsigner 对 applet/ts1.jar 签名。
注 有关更多信息,请参阅 http://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/jarsigner.html。Identity Manager 附带的 ts1.jar 文件使用自签名证书来签名,不应将其用于生产系统。在生产中,应使用由可信 CA 颁发的代码签名证书重新对此文件签名。
客户机端配置
按以下步骤启用客户机端配置:
必备条件
客户机系统必须运行安装了 JRE 1.4 或更高版本的 Web 浏览器。
过程
先获取证书和专用密钥,然后将其导出到 PKCS#12 密钥库中。
例如,如果要使用 Microsoft CA,请按类似以下的步骤操作:
对批准签名
可以按以下步骤对批准签名。
对后续批准签名
对某个批准签名之后,只需输入密钥库密码,然后单击 Sign,即可执行后续批准操作。(Identity Manager 将通过先前的批准记忆密钥库的位置。)
查看事务签名
按以下步骤查看 Identity Manager 审计日志报告中的事务签名。