Oracle® Identity Management Integration Guide 10g (10.1.4.2) Part Number E10528-01 |
|
|
View PDF |
This chapter explains how to register connectors with Oracle Directory Integration Platform and how to format the mapping rule attribute. It contains these topics:
See Also:
The attribute reference chapter of the Oracle Identity Management User Reference for a list and descriptions of the attributes in synchronization profilesBefore deploying a connector, you register it in Oracle Internet Directory. This registration involves creating a directory synchronization profile, which is stored as an entry in the directory.
To create a directory synchronization profile, use one of the following tools:
Oracle Directory Integration Server Administration tool
Directory Integration Assistant (dipassistant
)
See Also:
Attributes in a synchronization profile entry belong to the object class orclodiProfile
. The only exception is the orclodiplastappliedchangenumber
attribute, which belongs to the orclchangesubscriber
object class.
The 2.16.840.1.113894.7
object identifier prefix is assigned to platform-related classes and attributes.
The various synchronization profile entries in the directory are created under the container cn=subscriber profile,cn=changelog subscriber,cn=oracle internet directory
. For example, a connector called OracleHRAgent
is stored in the directory as orclodipagentname=OracleHRAgent,cn=subscriber profile,cn=changelog subscriber,cn=oracle internet directory
.
When you install Oracle Directory Integration Platform, sample import and export synchronization profiles are automatically created for:
Microsoft Active Directory 2000/2003
Microsoft Exchange 2000/2003
Sun Java System Directory 5.2. Sun Java System Directory has formerly been known as Sun ONE Directory Server, iPlanet Directory Server, and Netscape Directory Server, respectively. Oracle Internet Directory 10g (10.1.4.2) is certified for integration with all versions starting with Netscape Directory Server 4.13.
Novell eDirectory 8.6.2 and 8.7
OpenLDAP-2.2
LDIF files
Tagged files
The property and mapping files used to create the sample profiles are available in the $ORACLE_HOME/ldap/odi/samples and $ORACLE_HOME/ldap/odi/conf directory.
You can configure the third-party directory by using the express configuration option with the Directory Integration Assistant (dipassistant
). Using this approach, you can specify the connection details as input. This is the recommended approach.
You can also create the profiles based on the template properties file provided during installation. If you are doing this, then you must specify the connection details in the odip.profile.condirurl
, odip.profile.condiraccount
, and odip.profile.condirpassword
properties of the profile. In addition to specifying the connection details, you must also ensure that the user account in the third-party directory has the necessary privileges to read user and group information.
With Microsoft Active Directory, you must also ensure that the user account has the privileges to replicate directory changes for every domain of the forest monitored for changes. You can do this by one of the following methods:
Grant to this account Domain Administrative permissions
Make this account a member of the Domain Administrator's group
Grant to this account Replicating Directory Changes permissions for every domain of the forest that is monitored for changes
To grant this permission to a non-administrative user, follow the instructions in the "More Information" section of the Microsoft Help and Support article "How to Grant the 'Replicating Directory Changes' Permission for the Microsoft Metadirectory Services ADMA Service Account" available at http://support.microsoft.com/
.
Some of the most important pieces of a directory synchronization profile include the connection details you assign to the properties listed in Table 6-1:
Table 6-1 Connection Detail Properties
Property | Description |
---|---|
|
The URL of the connected directory:
|
|
The DN or account name used to connect to the third-party directory |
|
The password used to connect to the third-party directory |
Notes:
The account information you specify must have sufficient privileges in the directory to which you are connecting.
The account name and password properties are not required if you are using the LDIF or tagged data formats.
The Additional Config Info (orclodipAgentConfigInfo
) attribute in a synchronization profile stores any additional configuration information needed by a connector to synchronize Oracle Internet Directory with a connected directory. Although not required, you can use the following parameters with the Additional Config Info attribute to significantly improve synchronization efficiency:
You cannot use the Oracle Directory Integration Server Administration tool or Oracle Directory Manager to modify the Additional Config Info attribute. Instead, you must use the Directory Integration Assistant (dipassistant
).
See Also:
"Step 7: Specifying Synchronization Parameters for the Additional Config Information Attribute" for additional configuration information parameters that can be used with Novell eDirectory and OpenLDAP
The SearchDeltaSize
parameter determines how many incremental changes are processed during each iteration in a synchronization cycle. By default, the SearchDeltaSize
parameter is assigned a value of 500. The number of iterations performed during each synchronization cycle depend on the number of pending changes. For example, if the SearchDeltaSize
parameter is assigned a value of 500 and there are 498 pending changes, synchronization will require a single iteration. However, if there are 501 pending changes, synchronization will require two iterations. In some cases, you will experience better synchronization efficiency if you assign a higher value to this parameter. However, be sure that the value you specify does not exceed the LDAP search limit of the connected directory server. Otherwise, you may receive an error during synchronization and some changes may not be processed.
CAUTION:
Be sure to thoroughly analyze and test your deployment when modifying the SearchDeltaSize
parameter, especially if you assign a value higher than 2,000.
The SkipErrorToSyncNextChange
parameter determines how the Oracle directory integration server handles an error when processing a change during synchronization. By default, the SkipErrorToSyncNextChange
parameter is assigned a value of false
, which means that the Oracle directory integration server will continue processing a change until the error is resolved. If you assign a value of true
to the SkipErrorToSyncNextChange
parameter, the Oracle directory integration server will skip any changes that cause an error. Any failures are recorded in the $ORACLE_HOME/ldap/odi/log/profile_name.aud audit log If you do assign a value of true
to the SkipErrorToSyncNextChange
parameter, be sure to periodically review the audit log for failures.
See Also:
"Troubleshooting Synchronization"The UpdateSearchCount
parameter specifies the maximum number of iterations to perform on the connected directory during the synchronization process. The synchronization process stops after the specified number of search has been performed and resumes at the next scheduled interval.
This section discusses how to configure mapping rules. It contains these topics:
You use the mapping rules attribute to specify how to convert entries from the source to the destination. Oracle Internet Directory must either be the source or the destination. When converting the entries, there are three types of mapping rules: domain rules, attribute rules, and reconciliation rules. These mapping rules allow you to specify distinguished name mapping, attribute-level mapping, and reconciliation rules. Note that reconciliation rules are only used with Novell eDirectory and OpenLDAP. For more information on using reconciliation rules, see Chapter 22, "Integrating with Novell eDirectory or OpenLDAP".
Mapping rules are organized in a fixed, tabular format, and you must follow that format carefully. Each set of mapping rules appears between a line containing only the word DomainRules
and a line containing only three number signs (###
). The fields within each rule are delimited by a colon (:).
DomainRules srcDomainName1: [dstDomainName1]: [DomainMappingRule1] srcDomainName2: [dstDomainName2]: [DomainMappingRule2] AttributeRules srcAttrName1:[ReqAttrSeq]:[SrcAttrType]:[SrcObjectClass]:[dstAttrName1]: [DstAttrType]:[DstObjectClass]:[AttrMappingRule1] srcAttrName1,srcAttrName2:[ReqAttrSeq]:[SrcAttrType]:[SrcObjectClass]: [dstAttrName2]:[DstAttrType]:[DstObjectClass]:[AttrMappingRule2] ###
The expansion of srcAttrName1
and srcAttrName2
in the preceding example should be on a single, unwrapped long line.
This section specifies how entries are mapped between Oracle Internet Directory and a connected directory. If the mapping is between Oracle Internet Directory and another LDAP directory, then you can create multiple mapping rules, as explained in "Configuring Mapping Rules". The domain rule specifications appear after a line containing only the keyword DomainRules
. Each domain rule is represented with the components, separated by colons, and are described in Table 6-2.
Table 6-2 Domain Rule Components
Component Name | Description |
---|---|
|
Name of the domain or container of interest. Specify NONLDAP for sources other than LDAP and LDIF. |
|
Name of the domain of interest in the destination. Specify this component if the container for the entries in the destination directory is different from that in the source directory. If the value assigned to If not specified, this field assumes the value of |
|
This rule is used to construct the destination DN from the source domain name, from the attribute given in This field is meaningful only when importing to Oracle Internet Directory, or when exporting to an LDIF file or another external LDAP-compliant directory. Specify this component if any part of an entry's DN in the destination directory is different from that in the source directory entry. This component is optional for LDAP-to-LDIF, LDAP-to-LDAP, or LDIF-to-LDAP synchronizations. If it is not specified, then the source domain and destination domain names are considered to be the same. |
Example 6-1 Example of Distinguished Name Mapping
Distinguished Name Rules %USERBASE INSOURCE%:%USERBASE ATDEST%:
USERBASE
refers to the container from which the third-party directory users and groups must be mapped. Usually, this is the users
container under the root of the third-party directory domain.
Example 6-2 Example of One-to-One Distinguished Name Mapping
For one-to-one mapping to occur, the DN in the third-party directory must match that in Oracle Internet Directory. In this example, the DN in the third-party directory matches the DN in Oracle Internet Directory. More specifically:
The third-party directory host is in the domain us.mycompany.com
, and, accordingly, the root of the third-party directory domain is us.mycompany.com
. A user container under the domain would have a DN value cn=users,dc=us,dc=mycompany,dc=com
.
Oracle Internet Directory has a default realm value of dc=us,dc=mycompany,dc=com
. This default realm automatically contains a users
container with a DN value cn=users,dc=us,dc=mycompany,dc=com
.
Because the DN in the third-party directory matches the DN in Oracle Internet Directory, one-to-one distinguished name mapping between the directories can occur.
If you plan to synchronize only the cn=users
container under dc=us,dc=mycompany,dc=com
, then the domain mapping rule is:
Distinguished Name Rules cn=users,dc=us,dc=mycompany,dc=com:cn=users,dc=us,dc=mycompany,dc=com
This rule synchronizes every entry under cn=users,dc=us,dc=mycompany,dc=com
. However, the type of object synchronized under this container is determined by the attribute-level mapping rules that follow the DN Mapping rules.
If you plan to synchronize the entry cn=groups,dc=us,dc=mycompany,dc=com
under cn=users,dc=us,dc=mycompany,dc=com
then the domain mapping rule is as follows:
cn=groups,dc=us,dc=mycompany,dc=com: cn=users,dc=us,dc=mycompany,dc=com
See Also:
The mapping file examples at the end of this chapterThe attribute rule specifications appear after a line containing only the keyword AttributeRules
. Attribute rules specify how property values for an entry are related between two LDAP directories. For example, the cn
attribute of a user object in one directory can be mapped to the givenname
object in another directory. Similarly, the cn
attribute of a group object in one directory can be mapped to the displayname
attribute in another directory. Each attribute rule is represented with the components, separated by colons, and are described in Table 6-3. The attribute rule specifications end with a line three number signs (###
).
Table 6-3 Components in Attribute Rules
Component Name | Description |
---|---|
|
For LDAP-compliant directory repositories, this parameter refers to the name of the attribute to be translated. For Oracle Database repositories, it refers to the For other repositories this parameter can be appropriately interpreted. |
|
Indicator of whether the source attribute must be passed to the destination. When entries are synchronized between Oracle Internet Directory and the connected directory, some attributes need to be used as synchronization keys. This field indicates whether the specified attribute is being used as a key. If so, regardless of whether the attribute has changed or not, the value of the attribute is extracted from the source. A nonzero integer value should be placed in this field if the attribute needs to be always passed on to the other end. |
|
This parameter refers to the attribute type—for example, integer, string, binary—that validates the mapping rules. |
|
If the source of the shared attribute is an LDAP-compliant directory, then this parameter names the object class to which the attribute belongs. If the source of the shared attribute is an Oracle Database repository, then this parameter refers to the table name and is mandatory. For other repositories, this parameter may be ignored. |
|
Optional attribute. If it is not specified, then the For LDAP-compliant directories, this parameter refers to the name of the attribute at the destination. For Oracle Database repositories, it refers to the ColumnName in the table specified by the For other repositories, this parameter can be appropriately interpreted. |
|
This parameter refers to the attribute type—for example, integer, string, binary. Note that it is up to you, the administrator, to ensure the compatibility of the source and destination attribute types. Oracle Directory Integration Platform does not ensure this compatibility. |
|
For LDAP-compliant directories, this parameter refers to the object class to which the attribute belongs, and is optional. For Oracle Database repositories, it refers to the table name, and is mandatory. For other repositories this parameter may be ignored. |
|
Optional arithmetic expression with these operators: +, |, and these functions: |
In a newly created synchronization profile, mapping rules are empty. To enter mapping rules, edit a file that strictly follows the correct format.
Note:
When attributes and object classes are defined in the mapping file, it is assumed that source directories contain the respective attributes and object classes defined in the schema.If a parent container is selected for synchronization, then all its children that match the mapping rules are likewise synchronized. Child containers cannot be selectively ignored for synchronization.
To create a new mapping file:
Identify the containers of interest for synchronization in the source directory.
Identify the destination containers to which the objects in the source containers should be mapped. Be sure that the specified container already exists in the directory.
Determine the rule to create a DN of the entry to be created in the destination directory. In LDAP-to-LDAP, mapping is normally one-to-one. In non-LDAP-to-LDAP, a domain DN construct rule is required. For instance in the case of synchronizing from a tagged file or Human Resources agent, the mapping rule may be in the form uid=%,dc=mycompany,dc=com
. In this case, the uid
attribute must be present in all the changes to be applied from Oracle Human Resources. The uid
attribute must be specified as a required attribute, as specified in step 6.
Identify the objects that you want to synchronize among directories—that is, the relevant object classes in the source and destination directories. In general, objects that get synchronized among directories include users, groups, organizational units, organizations, and other resources. Identify the actual object classes used in the directories to identify these objects.
Identify the properties of the various objects that you want to synchronize among directories—that is, the attributes in the LDAP context. All the attributes of an object need not be synchronized. The properties of users that you might want to synchronize are cn
, sn
, uid
, and mail
.
Define the mapping rules. Each mapping rule has this format:
<srcAttrName>:<ReqdFlag>:<srcAttrType>:<SrcObjectClass>: <dstAttrName>:<dstAttrType>:<dstObjectClass>: <Mapping Rule>
While defining the mapping rule, ensure the following:
Every required attribute has a sequence number. For example, if in step 3 the uid
attribute is identified as required, then assign a value of 1
in place of <ReqdFlag>
.
Every relevant object class has a schema definition on the destination directory.
Every mandatory attribute in a destination object class has a value assigned from the source. This is true for standard object classes also, as the different LDAP implementations may not be completely standards-compliant.
It is not necessary to assign all attributes belonging to a source object class to a single-destination object class. Different attributes of a source object class can be assigned to different attributes belonging to different destination object classes.
If an attribute has binary values, then specify it as binary
in the <attrtype>
field.
Mapping rules are flexible. They can include both one-to-many and many-to-one mappings.
One-to-many
One attribute in a connected directory can map to many attributes in Oracle Internet Directory. For example, suppose an attribute in the connected directory is Address:123 Main Street/MyTown, MyState 12345
. You can map this attribute in Oracle Internet Directory to both the LDAP attribute homeAddress
and the LDAP attribute postalAddress
.
Many-to-one
Multiple attributes in a connected directory can map to one attribute in Oracle Internet Directory. For example, suppose that the Oracle Human Resources directory represents Anne Smith by using two attributes: firstname=Anne
and lastname=Smith
. You can map these two attributes to one attribute in Oracle Internet Directory: cn=Anne Smith
. However, in bidirectional synchronization, you cannot then map in reverse. For example, you cannot map cn=Anne Smith
to many attributes.
See Also:
The mapping file examples at the end of this chapterThe attribute mapping rules supported are:
Concatenation operator (+): Concatenates two string attributes.
The mapping rule looks like:
Firstname,lastname: : : : givenname: : inetorgperson: firstname+lastname
For example, if the Firstname
is John
and LastName
is Doe
in the source, then this rule results in the givenname
attribute in the destination with the value JohnDoe
.
OR operator ( | ): Assigns one of the values of the two string attributes to the destination.
The mapping rule looks like this:
Fistname,lastname : : : :givenname: :inetorgperson: firstname | lastname
In this example, givenname
is assigned the value of firstname
if it exists. If the firstname
attribute does not exist, then givenname
is assigned the value of lastname
. If both the values are empty, then no value is assigned.
bin2b64 ( )
: Stores a binary value of the source directory as a base64 encoded value in the destination directory. Typical usage is as follows:
objectguid: : : :binary: :orclobjectguid: orcladuser:bin2b64(objectguid)
This is required when you need search on the value of (objectguid
).
tolower()
: Converts the String attribute value to lowercase.
firstname: : : :givenname: :inetorgperson: tolower(firstname)
toupper ()
: Converts the String attribute value to uppercase.
firstname: : : :givenname: :inetorgperson: toupper(firstname)
trunc(str,char)
: Truncates the string beginning from the first occurrence of the specified char
.
mail : : : : uid : : inetorgperson : trunc(mail,'@')
For example, if mail
is John.Doe@acme.com
in the source, then this rule results in the uid
attribute in the destination with the value John.Doe.
trunc(str, char)
: Truncates the string up to and including the first occurrence of the specified char
.
mail : : : : uid : : inetorgperson : truncl(mail,'@')
For example, if mail is John.Doe@acme.com
in the source, then this rule results in the uid
attribute in the destination with the value acme.com
.
trunc(str1, str2)
: Truncates the string beginning with the first occurrence of the specified string.
mail : : : : uid : : inetorgperson : truncl(mail, "@domain")
dnconvert (str)
: Converts DN type attributes if domain mapping is used.
This example assumes the following domain mapping rule:
DomainRules cn=srcdomain:cn=dstdomain:
For example:
uniquemember : : : groupofuniquenames : uniquemember : :groupofuniquenames : dnconvert(uniquemember)
In this example, if uniquemember
in the source is cn=testuser1,cn=srcdomain,
then uniquemember
in the destination becomes cn=test user1,cn=dstdomain
.
Literals:
Userpassword: : :person: userpassword: :person: 'welcome1'
Based on the preceding discussions, here is a sample mapping file for importing user entries from the Oracle Human Resources database tables by using the tagged-file interface. Note that the source is a non-LDAP directory. This sample file is supplied during installation, at $ORACLE_HOME/ldap/odi/conf/oraclehragent.map.master.
DomainRules NONLDAP:dc=myCompany,dc=com:uid=%dc=myCompany,dc=com AttributeRules firstname: : : :cn: :person email : : : :cn: :person: trunc(email,'@') email : 1 : :uid: :person:trunc(email,'@') firstname,lastname: : : :cn: :person: firstname+","+lastname lastname,firstname: : : :cn: :person: lastname+","+firstname firstname,lastname: : : :sn: :person: lastname | firstname EmployeeNumber: : : :employeenumber: :inetOrgperson EMail: : : :mail: :inetOrgperson TelephoneNumber1: : : :telephonenumber: :person TelephoneNumber2: : : :telephonenumber: :person TelephoneNumber3: : : :telephonenumber: :person Address1: : : :postaladdress: :person state: : : :st: :locality street1: : : :street: :locality zip: : : :postalcode: :locality town_or_city: : : :l: :locality Title: : : :title: :organizationalperson #Sex: : : :sex: :person ###
As described earlier, the mapping file consists of keywords and a set of domain and attribute mapping rule entries. The mapping file in this example contains the domain rule NONLDAP:dc=myCompany,dc=com:cn=%,dc=myCompany,dc=com
.
This rule implies that the source domain is NONLDAP—that is, there is no source domain.
The destination domain (:dc=myCompany,dc=com
) implies that all the directory entries this profile deals with are in the domain dc=myCompany,dc=com
. Be sure that the domain exists before you start synchronization.
The domain mapping rule (:uid=%,dc=myCompany,dc=com
) implies that the data from the source refers to the entry in the directory with the DN that is constructed using this domain mapping rule. In this case, uid
must be one of the destination attributes that should always have a non null value. If any data corresponding to an entry to be synchronized has a null value, then the mapping engine assumes that the entry is not valid and proceeds to the next entry. To identify the entry correctly in the directory, it is also necessary that uid
is a single value.
In the case of the tagged file, the source entry does not have an object class to indicate the type of object to which it is synchronizing. Note that the SrcObjectClass
field is empty.
Every object whose destination is Oracle Internet Directory must have an object class.
Note that email
is specified as a required attribute in the sample mapping file. This is because the uid
attribute is derived from the email
attribute. Successful synchronization requires the email
attribute to be specified in all changes specified in the tagged file as follows:
Email : 1 : : :uid : : person : trunc(email,'@')
In some cases, the RDN of the DN needs to be constructed by using the name of a multivalued attribute. For example, to construct an entry with the DN of cn=%,l=%,dc=myCompany,dc=com
, where cn
is a multivalued attribute, the DomainMappingRule can be in this form: rdn,l=%,dc=myCompany,dc=com
where rdn
is one of the destination attributes having a non null value. A typical mapping file supporting this could have the following form:
DomainRules NONLDAP:dc=us,dc=myCompany,dc=com:rdn,l=%,dc=us,dc=myCompany,dc=com AttributeRules firstname: : :cn: :person email : : : :cn: :person: trunc(email,'@') email : 1: : :rdn: :person: 'cn='+trunc(email,'@') firstname,lastname: : : :cn: :person: firstname+","+lastname lastname,firstname: : : :cn: :person: lastname+","+firstname firstname,lastname: : : :sn: :person: lastname | firstname EmployeeNumber: : : :employeenumber: :inetOrgperson EMail: : : :mail: :inetOrgperson TelephoneNumber1: : : :telephonenumber: :person TelephoneNumber2: : : :telephonenumber: :person TelephoneNumber3: : : :telephonenumber: :person Address1: : : :postaladdress: :person Address1: : : :postaladdress: :person Address1: : : :postaladdress: :person state: : : :st: :locality street1: : : :street: :locality zip: : : :postalcode: :locality town_or_city: 2 : : :1: :locality Title: : : :title: :organizationalperson #Sex: : : :sex: :person ###
A set of sample integration profiles are created as part of the installation by using the Directory Integration Assistant (dipassistant
). The properties file used to create the profiles is located in the $ORACLE_HOME/ldap/odi/samples directory.
Sample Import Mapping File
DomainRules dc=mycompany.oid,dc=com:dc=mycompany.iplanet,dc=com AttributeRules # Mapping rules to map the domains and containers o: : :organization: o: :organization ou: : :organizationalUnit: ou: : organizationalUnit dc: : :domain:dc: :domain # Mapping Rules to map users uid : : :person: uid: :inetOrgperson sn: : :person:sn: :person cn: : :person:cn: :person mail: :inetorgperson: mail: :inetorgperson employeenumber: :organizationalPerson: employeenumber: :organizationalperson c: : :country:c: :country l: : :locality: l: :locality telephonenumber: :organizationalPerson: telephonenumber: :organizationalperson userpassword: : :person: userpassword: :person uid: : :person: orcldefaultProfileGroup: :orclUserV2 # Mapping Rules to map groups cn: : :groupofuniquenames:cn: :groupofuniquenames member: : :groupofuniquenames:member: :orclgroup uniquemember: : :groupofuniquenames:uniquemember: :orclgroup owner: : :groupofuniquenames:owner: :orclgroup # userpassword: :base64:userpassword: :binary:
Notice, in the preceding example that both the source domain and destination domain are specified in the Domain Mapping rule section. In this example, the source and the destination domains are the same. However, you can specify a different destination domain, provided the container exists in the destination directory.
Also notice, in the preceding example, that the attribute rules are divided into two sections: user attribute mapping rules and group attribute mapping rules. Specifying the object class in a mapping rule helps to uniquely map a specific attribute of an object.
You can customize mapping rules by adding new ones, modifying existing ones, or deleting some from the mapping rule set specified in the orclodipAttributeMappingRules
attribute. In general, to perform any of these operations, you identify the file containing the mapping rules, or store the value of the attribute for a file by using an ldapsearch
command as described in Oracle Internet Directory Administrator's Guide.
You cannot edit the mapping rules in the Oracle Directory Integration Server Administration tool. Instead, mapping rules are stored in a file that you upload to the directory as a value of the attribute. To upload the mapping file, use the Directory Integration Assistant (dipassistant
). Once you have created and uploaded the mapping file, you can maintain a copy of it in the $ORACLE_HOME/ldap/odi/conf directory, and upload it again after any future updates.
See Also:
Oracle Identity Management User Reference for information on how to use the Directory Integration Assistant (dipassistant
)To add a new entry to the mapping rules file, edit this file and add a record to it. To do this:
Identify the connected directory attribute name and the object class that needs to be mapped to Oracle Internet Directory.
Identify the corresponding attribute name in Oracle Internet Directory and the object class to which it needs to be mapped.
Generate the mapping rule elements indicating the conversion that needs to be done on the attribute values.
Load the attribute mapping rule file to the synchronization profile.
For instance, if the e-mail attribute of an entry in the source directory needs to be mapped to the unique identifier of the destination, then it can be:
Email: : : inetorgperson: uid: : person:
After you identify an entry to be modified in the mapping rules file, generate the mapping rule element for the desired conversion of attribute values.
After you identify an entry to be deleted in the mapping rules file, you can either delete the entry from the file or comment it out by putting a number sign (#) in front of it.
See Also:
The Oracle Directory Integration Platform tools chapter of Oracle Identity Management User Reference for instructions about using the Directory Integration Assistant (dipassistant
)
"Location and Naming of Files" for the names of the mapping rule files
OracleMetaLink Note: 261342.1—Understanding DIP Mapping Files available on OracleMetaLink at http://metalink.oracle.com/
By default, a connector retrieves changes to all objects in the container configured for synchronization. However, you may want to synchronize only certain types of changes, such as changes to just users and groups. While mapping rules allow you to specify how entries are converted from one directory to another, you can also filter objects that are synchronized among directories. Before changes from a connected directory are imported into Oracle Internet Directory, they can be filtered with the Connected Directory Matching Filter (orclODIPConDirMatchingFilter
) attribute in the synchronization profile. Similarly, before changes are exported from Oracle Internet Directory to a connected directory, they can be filtered with the OID Matching Filter (orclODIPOIDMatchingFilter
) attribute. For both attributes, you can specify a filter for connected directories that either obtain incremental changes through an LDAP search or that store changes in a change log, as described in the following sections:
You can use either the Oracle Directory Integration Server Administration tool or Directory Integration Assistant (dipassistant
) to update the matching filters.
For connected directories that do not support change logs, the latest footprint of the entries are obtained by performing an LDAP search. Because an LDAP search that is performed with objectclass=*
will return all entries in a given tree or subtree, to retrieve only the objects of interest for synchronization, you must provide a filter using LDAP filter syntax. For example, you can assign a search filter to the orclOdipConDirMatchingFilter
attribute. You specify the filter as searchfilter=LDAP_SEARCH_FILTER
.
The following example creates an LDAP search filter that retrieves organizational units, groups, and users, but not computers:
searchfilter=(|(objectclass=group)(objectclass=organizationalUnit) (&(objectclass=user)(!(objectclass=computer))))
For connected directories that store changes in a change log, you can use the following simple operators, which are provided by Oracle Directory Integration Platform, to specify a matching filter for either the Connected Directory Matching Filter (orclODIPConDirMatchingFilter
) or the OID Matching Filter (orclODIPOIDMatchingFilter
):
= (equal operator)
!= (not equal operator)
Note:
Connected directories that obtain incremental changes through an LDAP search can also use the preceding operators without thesearchfilter
attribute. However, you can only specify a single expression or the search will fail.You can use the preceding operators with either LDAP or non-LDAP directories, provided they obtain incremental changes from a change log. Wildcards and pattern matching are not supported with the preceding operators if you do not use the searchfilter
attribute. However, when multiple operator pairs are including in the filter, the expression is evaluated as a logical AND operation. For example, the following expression includes four operator pairs:
(objectclass=group)(objectclass=organizationalUnit) (objectclass=user)(objectclass!=computer)
The preceding expression evaluates as follows:
objectclass is equal to group AND objectclass is equal to organizationalUnit AND objectclass is equal to user AND objectclass is NOT equal to computer
For connected directories that store changes in a change log, a matching filter can synchronize changes for only the attributes that appear in the change log. If you include attributes in a matching filter that do not appear in the change log, the search operation will fail. For this reason, matching filters are of limited use for connected directories that store incremental changes in a change log.
Table 6-4 tells you where to find the various files used in the directory integration profile and during synchronization.
Table 6-4 Location and Names of Files
File | File Name |
---|---|
Import data file |
|
Export data file |
$ORACLE_HOME/ldap/odi/data/export/Profile_Name.dat |
Additional configuration information file |
$ORACLE_HOME/ldap/odi/conf/Profile_Name.cfg |
Mapping rules file |
$ORACLE_HOME/ldap/odi/conf/Profile_Name.map |
For example, the name of the data file of the Oracle Human Resources connector is oraclehrprofile.dat
.