Oracle Internet Directory Administrator's Guide Release 9.2 Part Number A96574-01 |
|
The Oracle directory integration server does not provide mapping or scheduling services for third-party metadirectory solutions. Instead, Oracle Internet Directory uses change logs to enable synchronization with supported third-party metadirectory solutions. This chapter describes how change log information is generated and how supporting solutions use that information. It tells you how to enable third-party metadirectory solutions to synchronize with Oracle Internet Directory.
This chapter contains these topics:
Oracle Internet Directory records each change as an entry in the change log container. A third-party metadirectory solution retrieves changes from the change log container and applies them to the third-party directory. To retrieve these changes, the third-party metadirectory solution must subscribe to the Oracle Internet Directory change logs.
Each entry in the change log store has a change number. The third-party metadirectory solution keeps track of the number of the last change it applied, and it retrieves from Oracle Internet Directory only those changes with numbers greater than the last change it applied. For example, if the last change a third-party metadirectory solution retrieved had a number of 250, then subsequent changes it retrieves would have numbers greater than 250.
See Also:
"About Connectors and Directory Integration Profiles" for a conceptual discussion of directory integration profiles |
To enable third-party metadirectory solutions to retrieve changes from Oracle Internet Directory, perform the tasks described in this section.
To bootstrap a directory to synchronize data between a local directory and Oracle Internet Directory, do the following:
lastChangeNumber
.
To find the number of the last change recorded in Oracle Internet Directory, use ldapsearch. Enter the following command:
ldapsearch -h host_name -p port_number -s base -b "" 'objectclass=*' lastchangenumber
If the change log does not contain change entries because they have been purged, then the last change number retrieved is 0
(zero).
Note: Initial bootstrapping is not required with a new installation of Oracle Internet Directory. In this case, the current change number of the newly installed Oracle Internet Directory is |
See Also:
"ldifwrite Syntax" for instructions on using ldifwrite |
To enable a third-party metadirectory solution to synchronize with Oracle Internet Directory, you must create a change subscription object for it in Oracle Internet Directory. This gives the third-party metadirectory solution access to change log objects stored in Oracle Internet Directory.
The change subscription object is an entry located under the following container in Oracle Internet Directory:
cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=
Oracle Internet Directory
This change subscription object provides a unique credential for a third-party metadirectory solution to bind with Oracle Internet Directory and to retrieve changes from it. You associate the change subscription object with the auxiliary object class orclChangeSubscriber
. This object class has several attributes, of which the following are mandatory:
userPassword
Password to be used by the directory when accessing the change log object in Oracle Internet Directory
orclLastAppliedChangeNumber
Number of the change applied during the last synchronization. This attribute allows the directory to retrieve only the changes in Oracle Internet Directory it has not already applied.
To create a change subscription object, use ldapadd. The following example uses an input file, named add.ldif
, to create and enable a change subscription object, named my_change_subscription_object
, under the container
cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=
Oracle Internet Directory. The orclLastAppliedChangeNumber
is the current change number in the directory before initial bootstrapping--in this example, 250.
add.ldif
:
dn: cn=my_change_subscription_object,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory userpassword: my_password orclLastAppliedChangeNumber: 250 orclSubscriberDisable: 0 objectclass: orclChangeSubscriber objectclass: top
ldapadd -h my_host -p 389 -f add.ldif
See Also:
"Disabling and Deleting Change Subscription Objects" for instructions on temporarily disabling change subscription objects or deleting them altogether |
This section contains these topics:
In this example, a connected directory with a change subscription object named my_change_subscription_object
acquires changes from Oracle Internet Directory.
ldapsearch -h my_host -p 389 -b "cn=changeLog" -s one
(&(objectclass=changeLogEntry)
(changeNumber >= orclLastAppliedChangeNumber )
( ! (modifiersname =cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory ) ) )
When the directory is retrieving changes for the first time, the value for orclLastAppliedChangeNumber
is the number you set in "Task 2: Create a Change Subscription Object in Oracle Internet Directory for the Third-Party Metadirectory Solution".
The argument (!(modifiersname=
client_bind_dn))
in the filter ensures that Oracle Internet Directory does not return changes made by the connected directory itself.
After retrieving changes from Oracle Internet Directory, the connected directory updates the orclLastAppliedChangeNumber
attribute in its change subscription object in Oracle Internet Directory. This allows Oracle Internet Directory to purge changes that connected directories have already applied. It also enables the connected directory to retrieve only the most recent changes, ignoring those it has already applied.
This example uses an input file, mod.ldif
, in which the connected directory has a change subscription object named my_change_subscription_object
, and the last applied change number is 121. The connected directory updates orclLastAppliedChangeNumber
in its change subscription object in Oracle Internet Directory as follows:
mod.ldif
:
dn: cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory changetype:modify replace: orclLastAppliedChangeNumber orclLastAppliedChangeNumber: 121
mod.ldif
file:
ldapmodify -h host -p port -f mod.ldif
See Also:
"Change Log Purging" for information about purging changes according to change numbers |
You can temporarily disable an existing change subscription object, or delete it altogether. This section contains these topics:
If a change subscription object already exists for a third-party metadirectory solution, but you want to disable it temporarily, then set the orcl
SubscriberDisable attribute to 1
. The following example uses an input file, mod.ldif
, to disable a change subscription object.
mod.ldif
:
dn: cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory changetype: modify replace: orclSubscriberDisable orclSubscriberDisable: 1
ldapmodify -h my_ldap_host -p 389 -v -f mod.ldif
To delete a change subscription object, use ldapdelete. Enter the following command:
ldapdelete -h ldap_host -p ldap_port
"cn=my_change_subscription_object,cn=Subscriber Profile,
cn=ChangeLog Subscriber,cn=Oracle Internet Directory"
|
Copyright © 1999, 2002 Oracle Corporation. All Rights Reserved. |
|