This chapter introduces Oracle Identity Management integration, its components, structure, and administration tools.
This chapter contains these topics:
Appendix C, "Case Study: A Deployment of Oracle Directory Integration Platform" for an example of how you can deploy Oracle Identity Management integration
Oracle Directory Integration Platform enables you to reduce administrative time and costs by integrating your applications and directories—including third-party LDAP directories—with a master back-end directory. Oracle Directory Integration Platform (DIP) supports the use of either Oracle Internet Directory, Oracle Unified Directory, or Oracle Directory Server Enterprise Edition as a back-end directory.
Use Oracle Directory Integration Platform to achieve these example objectives:
Keep employee records in Oracle Human Resources consistent with those in the Oracle back-end directory. Oracle Directory Integration Platform provides this synchronization through the Oracle Directory Synchronization Service.
Notify certain LDAP-enabled applications—such as Oracle Application Server Portal (Oracle Portal)—whenever changes are applied to the Oracle back-end directory. The Oracle Directory Integration Platform provides this notification through its Oracle Directory Integration Platform Provisioning Service.
Throughout the integration process, Oracle Directory Integration Platform ensures that the applications and other directories receive and provide the necessary information in a reliable way.
You can integrate with various directories, including the following:
Microsoft Active Directory 2003 and 2008
Active Directory Application Mode or ADAM, version 1 with SP1 on Windows 2003 (Microsoft Active Directory Lightweight Directory Service (AD LDS))
Oracle Directory Server Enterprise Edition (ODSEE) 11gR1 (188.8.131.52+), which was previously Sun Java System Directory Server
Novell eDirectory 8.8
IBM Tivoli Directory Server 6.2
Oracle Unified Directory 11gR1 (184.108.40.206+)
For a complete list of supported directories, refer to the System Requirements and Supported Platforms for Oracle Fusion Middleware 11gR1 certification matrix, available here:
Click the "FMW on WLS - Id&Access" tab and refer the "Directory Integration Platform (DIP)" row that appears under the heading "LDAP Certifications for Oracle Fusion Middleware 11gRelease1 (11.1.1.x)."
For example, in an Oracle Fusion Middleware environment, where access to Oracle components relies on data stored in an Oracle directory, you can still use Microsoft Active Directory as the central enterprise directory. Users of that directory can still access Oracle components because Oracle Directory Integration Platform can synchronize the data in Microsoft Active Directory with that in Oracle Internet Directory, Oracle Unified Directory, or Oracle Directory Server Enterprise Edition.
Oracle Directory Integration Platform can be installed simultaneously with other Oracle Identity Management components on the same host (server), or by itself as a standalone instance on a host system separate from other Oracle Identity Management components. This could be the case if you want to separately manage J2EE based components (like DIP, ODSM, or FMW control) in a dedicated WebLogic domain on a dedicated server.
To install a standalone Oracle Directory Integration Platform instance, you first need to install an Oracle Internet Directory or Oracle Unified Directory or Oracle Directory Server Enterprise Edition component. You should install a standalone instance of Oracle Directory Integration Platform under the following circumstances:
You need Oracle Directory Integration Platform to be installed in a different application server instance.
The applications that you need to provision and synchronize require intensive processing.
You need to run multiple instances of Oracle Directory Integration Platform for high availability.
The Oracle Fusion Middleware Installation Guide for Oracle Identity Management for complete information about installing Oracle Directory Integration Platform.
Synchronization has to do with directories rather than applications. It ensures the consistency of entries and attributes that are in both the Oracle back-end directory and the other connected directories.
Synchronization and Replication are not synonymous. Replication is used for data handling between directories of the same vendor. Synchronization, on the other hand, provides better control of data that has to be kept synchronized between the backend directory (metadirectory) and all connected third-party directories based on the transformation and mapping rules DIP provides.
This section contains these topics:
Synchronization enables you to coordinate changes between the Oracle back-end directory and the connected directories. To ensure that all directories use and provide only the latest data, each directory must be informed of changes made in the other connected directories. Synchronization ensures that changes to directory information—including, but not limited to data updated through provisioning—is kept consistent.
A single Directory Integration Platform service can simultaneously handle synchronization duties between multiple connected directories and the Oracle back-end directory. To connect an additional directory to the Oracle back-end directory, create a synchronization profile for that specific directory. This profile specifies the format and content of the data to be synchronized between the Oracle back-end directory and the connected directory. To create a synchronization profile, you can use the
manageSyncProfiles utility or Oracle Enterprise Manager Fusion Middleware Control.
Provisioning enables you to ensure that an application is notified of directory changes to, for example, user or group information. Such changes can affect whether the application allows a user access to its processes and determines which resources can be used.
Use provisioning when you are designing or installing an application has the following requirements:
Does not maintain a directory
Can and should allow only authorized users to access its resources
When you install an application that you want to provision, you must create a provisioning integration profile for it by using the
Synchronization and provisioning have important operational differences, as described in Table 1-1.
|Consideration||Directory Synchronization||Provisioning Integration|
The time for action
Application deployment time. Directory synchronization is for connected directories requiring synchronization with the Oracle back-end directory.
Application design time. Provisioning integration is for application designers developing LDAP-enabled applications.
Either one-way or two-way—that is, either from the Oracle back-end directory to the connected directories (including one or more connected Oracle databases), the reverse, or both.
Either one-way or two-way—that is, either from the Oracle back-end directory to applications, the reverse, or both.
Type of data
Any data in a directory.
Restricted to provisioned users and groups.
Oracle Human Resources
Oracle Directory Server Enterprise Edition
Oracle Unified Directory
Oracle Internet Directory
Microsoft Active Directory
IBM Tivoli Directory Server
This section describes the components involved in Oracle Identity Management integration. It contains these topics:
Either Oracle Internet Directory, Oracle Unified Directory, or Oracle Directory Server Enterprise Edition can be used as the repository in which Oracle components and third-party applications store and access user identities and credentials. The Oracle back-end directory uses the Oracle directory server to authenticate users by comparing the credentials entered by users with the credentials stored in the Oracle directory.
When credentials are stored in a connected directory and not in the Oracle back-end directory, users can still be authenticated if you are using Oracle Internet Directory as the back-end directory. In this case, Oracle Internet Directory uses an external authentication plug-in that authenticates users against the connected directory server. Currently, the external authentication plug-in is not available for Oracle Unified Directory or Oracle Directory Server Enterprise Edition, so if either of these directories are utilized as your back-end directory, users cannot be authenticated if credentials are stored in a connected directory.
The Oracle Directory Integration Platform is a J2EE application that enables you to synchronize data between different repositories and the Oracle back-end directory. Oracle Directory Integration Platform includes services and interfaces that allow you to develop synchronization solutions with other enterprise repositories. It can also provide interoperability between third party metadirectory solutions and Oracle directories.
Figure 1-1 shows an example of an Oracle Directory Integration Platform environment:
In the example in Figure 1-1, the Oracle back-end directory is synchronized with connected directories using Oracle Directory Integration Platform's Synchronization Enterprise JavaBeans (EJB) and the Quartz Scheduler. Similarly, changes in the Oracle back-end directory are sent to various repositories using Oracle Directory Integration Platform's Provisioning Enterprise JavaBeans (EJB) and the Quartz Scheduler.
The Oracle Directory Integration Platform Server performs the following services:
Oracle Directory Integration Platform Synchronization Service:
Scheduling—Processing a synchronization profile based on a predefined schedule
Mapping—Executing rules for converting data between connected directories and the Oracle back-end directory
Data propagation—Exchanging data with connected directories by using a connector
Oracle Directory Integration Platform Provisioning Service:
Scheduling—Processing a provisioning profile based on a predefined schedule
Event Notification—Notifying an application of a relevant change to the user or group data stored in the Oracle back-end directory
In the Oracle Directory Integration Platform environment, the contents of connected directories are synchronized with the Oracle back-end directory through the Oracle Directory Integration Platform Synchronization Service, which includes Synchronization Enterprise JavaBeans (EJB) and the Quartz Scheduler.
One-way: Some connected directories only supply changes to the Oracle back-end directory and do not receive changes from it. This is the case, for example, with Oracle Human Resources, the primary repository and basis for comparison for employee information.
Certain attributes can be targeted or ignored by the synchronization service. For example, the attribute for the employee badge number in Oracle Human Resources may not be of interest to the Oracle back-end directory, its connected directories, or client applications. You might not want to synchronize them. On the other hand, the employee identification number may be of interest to those components, so you might want to synchronize them.
Figure 1-2 shows the interactions among components in the Oracle Directory Synchronization Service in a sample deployment.
The central mechanism triggering all such synchronization activities is the Oracle back-end directory change log. It adds one or more entries for every change to any connected directory, including the Oracle back-end directory. The Oracle Directory Synchronization Service:
Monitors the change log.
Takes action whenever a change corresponds to one or more synchronization profiles.
Supplies the appropriate change to all other connected directories whose individual profiles correspond to the logged change. Such directories could include, for example, Oracle RDBMS, Oracle Human Resources, Microsoft Active Directory, Oracle Unified Directory, Oracle Directory Server Enterprise Edition, Novell eDirectory, IBM Tivoli Directory Server, or OpenLDAP. The Oracle Directory Synchronization Service supplies these changes using the interface and format required by the connected directory. Synchronization through the Oracle Directory Integration Platform connectors ensures that the Oracle back-end directory remains up-to-date with all the information that the Oracle back-end directory clients need.
The Oracle Directory Integration Platform Provisioning Service, which includes Provisioning Enterprise JavaBeans (EJB) and the Quartz Scheduler, ensures that each provisioned application is notified of changes in, for example, user or group information. To do this, it relies on the information contained in a provisioning integration profile. Each provisioning profile:
Uniquely identifies the application and organization to which it applies
Specifies, for example, the users, groups, and operations requiring the application to be notified
When changes in the Oracle back-end directory match what is specified in the provisioning profile of an application, the Oracle Directory Integration Platform Service sends the relevant data to that application.
A legacy application—that is, one that was operational before the Oracle Directory Integration Platform Service was installed—would not have subscribed in the usual way during installation. To enable such an application to receive provisioning information, a provisioning agent, in addition to the provisioning profile, must be developed. The agent must be able to translate the relevant data from the Oracle back-end directory into the exact format required by the legacy application.
Figure 1-3 shows the interactions among components in an Oracle Directory Integration Platform Service environment, including the special case of a provisioning agent for a legacy application.
Oracle components delegate the login function to the OracleAS Single Sign-On Server. When a user first logs in to an Oracle component, the component redirects the login to the OracleAS Single Sign-On Server. The OracleAS Single Sign-On Server authenticates the user by verifying the credentials entered by the user against those stored in the Oracle back-end directory. After authenticating the user, and throughout the rest of the session, the OracleAS Single Sign-On Server grants the user access to all the components the user both seeks and is authorized to use.
Oracle Directory Integration Platform 11g Release 1 (11.1.1) interoperates with and supports Oracle Application Server Single Sign-On 10g Release 10.1.4.3.0.
Be aware that Oracle Application Server Single Sign-On has been deprecated in favor of Oracle Access Management 11gR1 single sign-on. Customers are advised to migrate to Oracle Access Management 11gR1 as soon as it is certified with their products.
For more information see the Oracle Lifetime Support Policy for Oracle Single Sign-on:
Oracle Enterprise Single Sign-On Suite Plus Administrator's Guide for information about OracleAS Single Sign-On Server