集成 Oracle 身份管理器和 Oracle 数据库:执行用户管理和供应
集成 Oracle 身份管理器和 Oracle 数据库:执行用户管理和供应
本 OBE 教程将向您介绍和演示如何使用 Oracle 身份管理器自动为用户供应外部资源。在本教程中,Robert 将作为用户,Oracle 数据库作为资源。
大约 2 个小时
本 OBE 教程包括下列主题:
将鼠标置于此图标上以加载和查看本教程的所有屏幕截图。(警告:此操作会同时加载所有屏幕截图,网速较慢时,响应时间可能会比较长。)
注:此外,您还可以在下列步骤中将鼠标放在每个单独的图标上,从而仅加载和查看与该步骤相关的屏幕截图。
这些屏幕截图不能反映用户的具体环境。只是说明如何在 Oracle 身份管理器中找到特定功能。
Oracle 身份管理器是一个具有高度灵活性和可伸缩性的企业身份管理系统,用于在企业 IT 资源内集中控制用户帐户和访问权限。它提供了供应、身份和角色管理、审批和请求管理、基于策略的权限管理、技术集成以及自动化审计和合规性等功能。
Oracle 身份管理器的特性和优点包括身份及角色管理(用户和组管理、针对用户的自助服务功能和委托管理)、供应(审批与请求管理和可配置的工作流模型)、基于策略的权限、协调以及证明支持(用于审计和合规性目的)。
返回主题列表
Linda 是 Mydo Main Corporation 的网络管理员。在 Mydo Main,Linda 负责执行对机构内各种用户的身份和访问进行管理的任务。要执行这些任务,她需要使用 Oracle 身份管理器首先创建这些用户的记录,然后将 Oracle 身份管理器连接器分配给他们。这些连接器表示要供应给他们的外部资源。
Robert 在 Mydo Main Corporation 的工程部工作。因为该部门的所有员工都有权访问 Oracle 数据库,因此 Linda 需要将表示这一资源的连接器分配给 Robert。进行分配时,Oracle 身份管理器(而非 Linda)填写与该连接器相关的电子表单。在自动填充完成表单域后,Oracle 身份管理器将保存与其数据库相对应的值,然后使用这些值为 Robert 供应外部资源(即,Oracle 数据库)。
返回主题列表
在开始本教程前,您应当完成标题为“安装 Oracle 身份管理器”的 OBE。
返回主题列表
在 Oracle 身份管理器中,所有用户必须 属于一个组织。因此,在创建获取指定资源(例如 Oracle 数据库)的用户 Robert 的记录前,您必须首先 为该用户创建一个组织。
在本 OBE 中,Robert 所属的组织是工程部。
要在 Oracle 身份管理器中创建组织,执行以下步骤:
1. |
启动您的 Oracle 身份管理器服务器、管理控制台和设计控制台。
注: 要了解更多有关加载、设置、启动 Oracle 身份管理器的信息,请参考标题为“安装 Oracle 身份管理器”的 OBE。
|
2. |
以“超级用户” 帐户登录到 Oracle 身份管理器的管理控制台(即,在 User ID 域中输入 xelsysadm,在 Password 域中输入 abcd1234)。
注: 首次使用一个特定帐户登录 Oracle 身份管理器时,您必须选择和回答“质询”问题。这些问题用于在您重设口令时验证您的身份。但是,对于使用该帐户进行的所有后续登录,则不显示这些问题。您将直接进入 Oracle 身份管理器管理控制台的主页。
要了解更多关于选择和回答“质询”问题的信息,请参考标题为“安装 Oracle 身份管理器”的 OBE。
|
3. |
在 Organizations 文件夹中打开 Create Organization 表单。

|
| 4. |
在 Name 域中输入 Engineering。从 Type 下拉列表中选择 Department。单击 Create Organization。
工程组织创建完毕。Oracle 身份管理器自动将该组织的状态设为 Active。
现在,您可以创建目标用户的记录,并将该用户分配给工程组织。该用户 Robert 将是外部资源(即,Oracle 数据库)的获得者。
|
返回主题列表
现在,您可以创建目标用户的记录,并将该用户分配给您创建的工程组织。该用户 Robert 将是外部资源(即,Oracle 数据库)的获得者。
要创建用户,执行以下步骤:
1. |
在 Users 文件夹中打开 Create User 表单。
|
2. |
完成 Create User 表单,如下所示:
| 域名 |
域值 |
| User ID |
RLAVALLI |
| First Name |
Robert |
| Middle Name |
Paul |
| Last Name |
La Vallie |
| Organization |
Engineering |
| User Type |
End-User |
| Employee Type |
Full-Time Employee |
| Email Address |
robert.lavallie@oracle.com |
| Password |
rlavalli |
| Confirm Password |
rlavalli |
|
| 3. |
单击 Create User。

将显示 User Detail 表单。

这表示目标用户的记录已创建完成,并分配给了工程组织。
现在,您可以将 *.xml 文件导入到您的环境中。*.xml 文件表示 Oracle 数据库的 Oracle 身份管理器连接器。因此,您可以将该连接器分配给 Robert 以为该用户供应相关资源(即,Oracle 数据库)。 |
返回主题列表
您已创建了用户 Robert 的记录,Robert 将是外部资源(即,Oracle 数据库)的获得者。要使 Robert 获得这一资源,您必须将 *.xml 文件导入到您的环境中。 *.xml 文件表示此类数据库的 Oracle 身份管理器连接器。然后,您可将该连接器分配给 Robert,以向该用户供应这一外部资源。
要导入连接器,执行以下步骤:
1. |
在 Deployment Management 文件夹中打开 Import 表单。
注:如果显示 Warning – Security 窗口,根据您的计算机上安装的 Web 浏览器版本,单击 Yes 或 Grant This Session 按钮。
|
2. |
将显示“Please choose a file for import”窗口。在此窗口中,选择导出文件所在的文件夹路径以及 *.xml 文件的名称。
在本 OBE 中,选择位于 E:\OIM_Installs\OIM_CP_900\Database Servers\Database User Management\Database Rev 3.1.0\xml 目录中的 xliDBAccessLogin_DM.xml 文件(在解压缩 Database Rev 3.1.0.zip 文件后)。

|
| 3. |
选择 xliDBAccessLogin_DM.xml 文件。单击 Open。
|
| 4. |
将显示 Deployment Manager 窗口。在此窗口中,单击 Add File。
|
| 5. |
将显示 Deployment Manager – Import 窗口。单击 Next。
|
| 6. |
将显示 Confirmation 窗口。单击 Next。
|
| 7. |
此时您不需要提供参数值。单击 Skip。
|
| 8. |
将显示最终的 Confirmation 窗口。单击 View Selections。
|
| 9. |
将显示 Deployment Manager – Import 窗口。单击 Import。
|
| 10. |
将显示 Confirmation 窗口。单击 Import。
|
| 11. |
将显示 Success 窗口,指明 *.xml 文件成功导入(即,xliDBAccessLogin_DM.xml 文件)。因此,Oracle 数据库(由此文件表示)的相应连接器也已导入。单击 OK。

现在您已导入了 Oracle 数据库的 Oracle 身份管理器连接器,下面可以配置它以在您的环境中工作。 |
返回主题列表
在本 OBE 的上一部分中,您已将 Oracle 数据库的 Oracle 身份管理器连接器导入到您的环境中。现在您必须对该连接器进行配置以使它可在您的环境中工作。
这包括以下配置:
- 复制所有用于供应目的的 JAR 文件。在本 OBE 中,将 xliDatabaseAccess.jar 文件复制到您的 E:\oracle\oim_server\xellerate\JavaTasks 目录中。
- 重新编译导入的适配器(以及 Oracle 身份管理器连接器的其他组件)。您必须 重新编译这些适配器。否则,它们的代码不能驻留在与您的 Oracle 身份管理器环境相关的应用服务器中。因此,它们不能工作。
- 创建一个包含管理证书的定义,Oracle 身份管理器需要它来向 Robert 供应特定 的资源。在此 OBE 中,资源是 Oracle 数据库,它有以下管理证书:
| 参数 |
值 |
| DataBaseType |
Oracle |
| DataBaseName |
orcl |
| Driver |
oracle.jdbc.driver.OracleDriver |
| Password |
abcd1234 |
| URL |
jdbc:oracle:thin:@ten.mydomain.com:1521:orcl |
| User ID |
system |
要使您的连接器可以工作,执行以下步骤:
1. |
将 xliDatabaseAccess.jar 文件(位于 E:\OIM_Installs\OIM_CP_900\Database Servers\Database User Management\Database Rev 3.1.0\lib 目录中)复制到您的 E:\oracle\oim_server\xellerate\JavaTasks 目录中。
|
2. |
以“超级用户” 帐户登录到 Oracle 身份管理器的设计控制台(即,在 User ID 域中输入 xelsysadm,在 Password 域中输入 abcd1234)。

注:在本 OBE 的上一部分中,您已导入 Oracle 身份管理器连接器。此连接器的两个组件是 DataBase Access 表单和 DB Prepopulate UserLogin 适配器。此适配器填充表单的 Login/User 域。
在此 OBE 中,适配器的目标是填充三个表单域:Login/User、Password 和 IT Resource。要让适配器精确地反映其修订目的,将其名称由 DB Prepopulate UserLogin 更改为 DB Prepopulate。
|
| 3. |
展开 Development Tools 文件夹,双击 Adapter Factory 节点。
|
| 4. |
在 Name 域中,输入 DB Prepopulate UserLogin。单击工具栏中的 Query 按钮。
将显示 DB Prepopulate UserLogin 适配器。
|
| 5. |
将 Name 域中的值由 DB Prepopulate UserLogin 更改为 DB Prepopulate。单击 Save。
|
| 6. |
双击 Adapter Manager 节点。
|
| 7. |
将显示您先前导入的适配器列表。选择 Compile All 选项。单击 Start。
|
| 8. |
Oracle 身份管理器开始重新编译您的适配器。
重新编译完所有适配器后,每个适配器的 Status 列中显示一则 OK 消息。这表示您的适配器已经成功重新编译,可以在您的 Oracle 身份管理器环境中工作。
|
| 9. |
展开 Resource Management 文件夹,双击 IT Resources 节点。
|
| 10. |
在 Name 域中,输入 Database IT Resource。
|
| 11. |
双击 Type 查找域(在 Type 文件域中)。在显示的 Lookup 窗口中,选择 Database。单击 OK。
|
| 12. |
单击 Save。
|
| 13. |
将显示您的 IT 资源类型的参数。输入参数的值,如下所示(双击每个值域输入值):
| 参数 |
值 |
| DataBaseType |
Oracle |
| DataBaseName |
orcl |
| Driver |
oracle.jdbc.driver.OracleDriver |
| Password |
abcd1234 |
| URL |
jdbc:oracle:thin:@ten.mydomain.com:1521:orcl |
| User ID |
system |
|
| 14. |
单击 Save。

您已对 Oracle 身份管理器连接器进行了配置,使它可在您的环境中工作。现在,您可以修改该连接器的另一组件:供应流程。
这样,Oracle 身份管理器(而非 Mydo Main Corporation 的网络管理员 Linda)可以使用数据填充连接器的流程表单域,并将此信息保存到数据库。完成此过程后,Oracle 身份管理器可以使用此数据向 Robert 供应相应的的资源(即,Oracle 数据库)。 |
返回主题列表
在本 OBE 的上一部分中,您已配置了您的连接器使它在您的环境中工作。在本部分中,您可以修改该连接器的另一组件:供应流程。这样,Oracle 身份管理器(而非 Mydo Main Corporation 的网络管理员 Linda)可以使用数据填充连接器的流程表单域,并将此信息保存到数据库。完成此过程后,Oracle 身份管理器可以使用此数据向 Robert 供应相应的的资源(即,Oracle 数据库)。
要设置 Oracle 身份管理器以使它能执行这些操作,您必须选择表示供应流程的记录的 Auto Pre-populate 和 Auto Save Form 复选框。在本 OBE 中,该记录标题为 DataBase Access (Login)。
要修改 DataBase Access (Login) 供应流程,执行以下步骤:
1. |
展开设计控制台的 Process Management 文件夹,双击 Process Definition 节点。
|
2. |
在 Name 域中输入 DataBase Access (Login),然后单击 Query。
|
3. |
选择 Auto Pre-populate 和 Auto Save Form 复选框。
|
4. |
单击 Save。
在本 OBE 标题为“导入连接器”的部分中,您已将 Oracle 数据库的 Oracle 身份管理器连接器导入到您的环境中。您导入的该连接器的一个组件是 DB Prepopulate 适配器。Oracle 身份管理器使用此适配器自动填充定制流程表单的域。
您现在可创建 Oracle 身份管理器评估的标准以确定是否使用 DB Prepopulate 适配器来填充定制流程表单的域。此标准称为预填充规则。
如果规则标准评估为 true,Oracle 身份管理器将使用此适配器自动填充定制流程表单域,以将信息保存到数据库。完成此流程后,Oracle 身份管理器可以向 Robert 供应相应的的资源(即,Oracle 数据库)。 |
返回主题列表
您现在可创建 Oracle 身份管理器评估的标准以确定是否使用 DB Prepopulate 适配器来填充连接器的定制流程表单的域。DB Prepopulate 适配器是随 Oracle 身份管理器连接器的其他组件导入的。此标准称为预填充规则。
如果规则标准评估为 true,Oracle 身份管理器将使用此适配器自动填充定制流程表单域,以将信息保存到数据库。因此,Oracle 身份管理器可以向 Robert 供应相应的的资源(即,Oracle 数据库)。
在本 OBE 中,创建一个预填充规则以评估用户所属组织的名称。对于属于工程组织(包括 Robert)的用户,Oracle 身份管理器将 DB Prepopulate 适配器分配给定制流程表单的指定域,使这些域可以自动进行填充。
要创建预填充规则,执行以下步骤:
1. |
展开设计控制台的 Resource Management 文件夹,双击 Rule Designer 节点。
|
2. |
将显示 Rule Designer 表单的域。填充该表单,如下所示:
| 域 |
值 |
| Name |
Oracle Prepopulate Rule |
| Type |
Pre-Populate |
| Sub-Type |
User Provisioning |
| Object |
DataBase Access (Login) |
| Process |
DataBase Access (Login) |
| Description |
If the outcome of this rule is true, Oracle Identity Manager uses the DB Prepopulate adapter, which is associated with this rule, to populate a field of the custom process form. |
|
3. |
单击 Save。Rule Designer 表单中的选项卡处于活动状态。
|
4. |
单击 Add Element 按钮。将显示 Edit Rule Element 窗口。
|
5. |
将显示您的预填充规则的参数。在 Edit Rule Element 窗口中,指定参数的值,如下所示:
| 参数 |
值 |
| Attribute Source |
Request Target Information |
| Attribute |
Organization Name |
| Operation |
= = |
| Attribute Value |
Engineering |
|
6. |
单击 Save。然后,单击 Close。
注: 如果显示 Closing Form 窗口,单击 Yes。
主屏幕再次处于活动状态。
对于所有属于工程组织的用户(包括 Robert),该规则元素的结果为 true。因此,Oracle 身份管理器将相关的预填充适配器(即,DB Prepopulate 适配器)分配给定制流程表单的指定域。 |
返回主题列表
您现在可配置 Oracle 身份管理器以通过预填充适配器和规则自动填充定制流程表单的特定域。完成此过程后,Oracle 身份管理器可以将这些域中包含的值保存到其数据库中。然后,它可使用此信息向 Robert 供应外部资源(即,Oracle 数据库)。
为此,Oracle 身份管理器需要了解以下内容:
- 与预填充适配器相关联的定制流程表单的域
- 决定是否使用适配器来填充指定域的信息的预填充规则
- 将与指定的域关联的适配器
设置了特定表单域的“域-规则-适配器”关联后,您必须指定规则的优先级编号。否则,Oracle 身份管理器无从知道检查“域-规则-适配器”组合的顺序。
在最后一步中,您必须将预填充适配器的变量映射到正确的位置。否则,适配器无法工作。
注: 因为定制流程表单是活动的,因此不能修改。因此,要将预填充适配器和规则分配给组成此表单的域,您必须另外创建一个版本。然后,在您将适配器和规则与指定的表单域相关联后,您必须激活此备用版本的表单。
要将预填充适配器和规则分配给定制流程表单的特定域,执行以下步骤:
1. |
展开设计控制台的 Development Tools 文件夹,双击 Form Designer 节点。
|
2. |
在 Table Name 域中输入 DB(它显示为 UD_DB)。单击 Query。
注: UD_DB 值表示定制流程表单在数据库中的识别方式。
|
3. |
单击 Create New Version。将显示“Create a new version”窗口。
|
4. |
在 Label 域中,输入 Version 2(表示备用版本的表单)。
|
5. |
在“Create a new version”窗口的工具栏上,单击 Save。然后,单击 Close。
“Create a new version”窗口关闭,Form Designer 表单的 Additional Columns 选项卡再次处于活动状态。
|
6. |
从 Current Version 组合框中选择 Version 2。
|
7. |
单击 Pre-Populate 选项卡。
|
8. |
单击 Add。将显示 Pre-Populate Adapters 窗口。
|
9. |
填充 Pre-Populate Adapters 窗口的域,如下所示:
| 域 |
值 |
| Field Name |
IT Resource |
| Rule |
Oracle Prepopulate Rule |
| Adapter |
DB Prepopulate |
| Order |
1 |
|
10. |
在 Pre-Populate Adapters 窗口的工具栏上,单击 Save。
重要事项: Mapping Incomplete 显示在 Adapter Status 域中。这表示 DB Prepopulate 适配器包含未正确映射的变量。这些变量需要映射到正确的位置。否则,适配器无法工作。
|
11. |
选择 inputValue 适配器变量,然后单击 Map。
将显示 Map Adapter Variables 窗口。
|
12. |
填充 Map Adapter Variables 窗口的域,如下所示:
| 域 |
值 |
| Map To |
IT Resources |
| Qualifier |
Database IT Resource |
|
13. |
在 Map Adapter Variables 窗口的工具栏上,单击 Save。然后,单击 Close。
Map Adapter Variables 窗口消失,Pre-Populate Adapters 窗口再次处于活动状态。
|
14. |
在 Pre-Populate Adapters 窗口的工具栏上,单击 Save。然后,单击 Close。
Pre-Populate Adapters 窗口消失,Form Designer 表单的 Pre-Populate 选项卡再次处于活动状态。
您现在可以设置定制流程表单的 Login/User 域的“域-规则-适配器”关联。
|
15. |
单击 Add。将显示 Pre-Populate Adapters 窗口。
|
16. |
填充 Pre-Populate Adapters 窗口的域,如下所示:
| 域 |
值 |
| Field Name |
Login/User |
| Rule |
Oracle Prepopulate Rule |
| Adapter |
DB Prepopulate |
| Order |
2 |
|
17. |
在 Pre-Populate Adapters 窗口的工具栏上,单击 Save。
|
18. |
选择 inputValue 适配器变量,然后单击 Map。
将显示 Map Adapter Variables 窗口。
|
19. |
填充 Map Adapter Variables 窗口的域,如下所示:
| 域 |
值 |
| Map To |
User Definition |
| Qualifier |
User Login |
|
20. |
在 Map Adapter Variables 窗口的工具栏上,单击 Save。然后,单击 Close。
Map Adapter Variables 窗口消失,Pre-Populate Adapters 窗口再次处于活动状态。
|
21. |
在 Pre-Populate Adapters 窗口的工具栏上,单击 Save。然后,单击 Close。
Pre-Populate Adapters 窗口消失,Form Designer 表单的 Pre-Populate 选项卡再次处于活动状态。
您现在可以设置定制流程表单的 Password 域的“域-规则-适配器”关联。
|
22. |
单击 Add。将显示 Pre-Populate Adapters 窗口。
|
23. |
填充 Pre-Populate Adapters 窗口的域,如下所示:
| 域 |
值 |
| Field Name |
Password |
| Rule |
Oracle Prepopulate Rule |
| Adapter |
DB Prepopulate |
| Order |
3 |
|
24. |
在 Pre-Populate Adapters 窗口的工具栏上,单击 Save。
|
25. |
选择 inputValue 适配器变量,然后单击 Map。
将显示 Map Adapter Variables 窗口。
|
26. |
填充 Map Adapter Variables 窗口的域,如下所示:
| 域 |
值 |
| Map To |
User Definition |
| Qualifier |
Password |
|
27. |
在 Map Adapter Variables 窗口的工具栏上,单击 Save。然后,单击 Close。
Pre-Populate Adapters 窗口消失,Pre-Populate Adapters 窗口再次处于活动状态。
|
28. |
在 Pre-Populate Adapters 窗口的工具栏上,单击 Save。然后,单击 Close。
Pre-Populate Adapters 窗口消失,Form Designer 表单的 Pre-Populate 选项卡再次处于活动状态。
|
29. |
选择 Login/User - Default - DB Prepopulate“域-适配器-规则”关系,然后单击 Delete。
|
30. |
单击 Make Version Active 按钮。
|
31. |
在显示的 Warning 窗口中,单击 OK。
注: 如果显示 Closing Form 窗口,单击 Yes。
在 Active Version 域中,现在显示 Version 2。
您定义了定制流程表单的指定域的“域-规则-适配器”关联。此外,您还激活了备用版的表单。
您现在可将导入的连接器分配给目标用户(即,Robert)。完成分配后,Oracle 身份管理器填写定制流程表单,将值保存到其数据库,然后使用这些值向该用户供应相应的外部资源(即,Oracle 数据库)。 |
返回主题列表
您现在可将导入的连接器分配给目标用户(即,Robert)。分配完成后,Oracle 身份管理器将:
- 填写定制流程表单,过程如下:
- 评估表单指定域的预填充规则
- 使用值填充每一个域(值由相关的预填充适配器生成)
- 将值保存到其数据库
- 使用这些值为 Robert 供应相应的外部资源(即,Oracle 数据库)
简言之,这三个操作由 Oracle 身份管理器而不是 Mydo Main Corporation 网络管理员 Linda 完成。即,不需要人工干预。
要为用户分配连接器,执行以下步骤:
1. |
在 Users 文件夹中打开 Manage User 表单。
|
2. |
从该表单内显示的组合框中选择 User ID。然后,在组合框右侧的文本框中,输入目标用户的 ID(即,RLAVALLI)。单击 Search User。

|
| 3. |
从显示的结果集中,单击表示目标用户 ID 的链接。
|
| 4. |
显示 User Detail 表单。从该表单内显示的组合框中选择 Resource Profile。
将显示 Resource Profile 表单。
|
| 5. |
单击显示在此表单中的 Provision New Resource 按钮。
|
| 6. |
选择您的连接器并将它分配给该用户(即,DataBase Access (Login))。单击 Continue。
|
| 7. |
再次单击 Continue。
|
| 8. |
将显示“Provisioning successfully initiated”消息,以及“Back to User Resource Profile”链接。
这表示导入的连接器已分配给用户。Oracle 身份管理器填写定制流程表单,将值保存到其数据库,然后使用这些值向该用户供应相应的外部资源(即,Oracle 数据库)。
您现在可验证 Robert 的登录证书可用于访问此数据库。在此 OBE 中,可使用 Oracle SQL*Plus 客户端来完成该任务。 |
返回主题列表
在此 OBE 中,您学习了如何使用 Oracle 身份管理器将外部资源(本例中为 Oracle 数据库)供应给指定用户,该用户的登录证书在定制流程表单中指定。
现在,您必须确保这些证书可用于访问外部数据库。在此 OBE 中,可使用 Oracle SQL*Plus 客户端来完成该任务。
要访问外部资源,执行以下步骤:
1. |
要启动 Oracle SQL*Plus 客户端,导航至 SQL Plus(通过开始 > 程序 > Oracle - OraDb10g_home1 > Application Development > SQL Plus)。
将显示 Oracle SQL*Plus 窗口和 Log On 窗口。
|
2. |
填充 Log On 窗口的域,如下所示:
| 域 |
值 |
| User Name |
RLAVALLI |
| Password |
RLAVALLI |
| Host String |
orcl |
|
| 3. |
单击 OK。

Oracle SQL*Plus 窗口中显示如下文本:

这表示 Robert 的登录证书可用于访问 Oracle 数据库。即,自动为 Oracle 身份管理器用户供应外部资源。 |
返回主题列表
在本教程中,您学习了如何:
 |
创建组织 |
 |
创建用户 |
 |
导入连接器 |
 |
使连接器可以工作 |
 |
修改供应流程 |
 |
创建预填充规则 |
 |
将预填充适配器和规则分配给定制流程表单域 |
 |
为用户分配连接器 |
 |
访问资源 |
返回主题列表
返回主题列表
将鼠标置于该图标上可以隐藏所有的屏幕截图。
|