Skip Headers
Oracle® Identity Manager Generic Technology Connector Administrator's Guide
Release 9.0.3.1

Part Number B32445-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

A Predefined Providers Shipped with Oracle Identity Manager

After you determine the provider requirements, you must identify the predefined providers that meet these requirements. To perform this step, use the information provided in this appendix.

The following providers are shipped with the current release of Oracle Identity Manager:

Shared Drive Transport Provider for Reconciliation

This provider reads data from flat files stored in staging directories on the target system server and copies the data to a file in an archiving directory on the Oracle Identity Manager server. If the staging directories are on a different computer, then they must be shared and mapped as network drives on the Oracle Identity Manager server.

The following are parameters of this provider:

The following table describes the impact of the various permissions on the shared directories that are used to hold staging and archiving data files.

Storage entity Access Permission Impact If This Permission Is Missing
Staging directory parent Read Reconciliation is not performed. An error message is logged.
Staging directory parent Write Data files in the parent staging directory are not deleted at the end of the archiving process.
Staging directory parent Execute No impact
Staging directory child Read Reconciliation is not performed for child data. An error message is logged.
Staging directory child Write Data files in the child staging directory are not deleted at the end of the archiving process.
Staging directory child Execute No impact
Archiving directory Read Reconciliation is performed for parent and child data. During the archiving process, files are not copied to the archiving directory. However, these files are deleted from the parent and child staging directories if the required permissions have been set on those directories.
Archiving directory Write Reconciliation is performed for parent and child data. During the archiving process, files are not copied to the archiving directory. However, these files are deleted from the parent and child staging directories if the required permissions have been set on those directories.
Archiving directory Execute No impact
Staging directory parent file Read Reconciliation is performed for all parent data files that have the Read permission, but not for this file. An error message is logged.
Staging directory parent file Write Data in this file is reconciled. However, this file is not deleted at the end of the archiving process. An error message is logged.
Staging directory parent file Execute No impact
Staging directory child file Read Reconciliation is performed for all parent data files that have the Read permission, but not for this file. An error message is logged.
Staging directory child file Write Data in this file is reconciled. However, this file is not deleted at the end of the archiving process. An error message is logged.
Staging directory child file Execute No impact

Note:

Data files in the staging directory cannot be deleted if they are open in any editor.

CSV Format Provider for Reconciliation

Although this provider is packaged as a standalone provider, all of its parameters are bundled with the Shared Drive Transport provider. If you select the Shared Drive Transport Provider on the Step 1: Basic Information screen, then you must select the CSV Format provider. When you select this provider, its parameters are displayed along with the Shared Drive Transport provider parameters.

SPML Format Provider for Provisioning

The following is the parameter of this provider:

Target ID

Use this parameter to define the target ID of the actual target.

A Velocity template engine is used to create the SPML requests. For the following processes, the provider generates requests based on the SPML 2.0 DSML profile:

This provider also has the following default identity fields:

Note:

On the Modify Connector Configuration screen, these two fields are displayed by default in the Provisioning Staging data set.

For each provisioning task (for example, Create User and Modify User), the provider generates a request in a predefined format.

The following sections list the XML definition code for provisioning requests and responses implemented by the provider, for the various provisioning tasks:

Note:

The definition XML code for requests and responses is for your reference. You cannot customize this code in the provider.

The Provisioning Transport provider expects responses that are based on the sample response formats described in these sections.

Create User

The following is sample SPML code for the Add request:

<addRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <targetID ID="ADServer_124"/>
  <containerID ID="Contractors"/>
  <data>
    <dsml:attr name="objectclass">
      <dsml:value>userObject</dsml:value>
    </dsml:attr>
      <dsml:attr name="firstName">
        <dsml:value>John</dsml:value>
      </dsml:attr>
      <dsml:attr name="lastName">
        <dsml:value>Doe</dsml:value>
      </dsml:attr>
  </data>
</addRequest>

The following is sample SPML code for the Add response:

<addResponse status="success">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</addResponse>

Modify User

The following is sample SPML code for the Modify request:

<modifyRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
  <modification>
    <dsml:modification name="lastName" operation="replace">
      <dsml:value>Doe</dsml:value>
    </dsml:modification>
  </modification>
</modifyRequest>

The following is sample SPML code for the Modify response:

<modifyResponse status="success" >
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</modifyResponse>

Delete User

The following is sample SPML code for the Delete request:

<deleteRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</deleteRequest>

The following is sample SPML code for the Delete response:

<deleteResponse status="success" >
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</deleteResponse>

Disable User

The following is sample SPML code for the Suspend request:

<suspendRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</suspendRequest>

The following is sample SPML code for the Suspend response:

<suspendResponse status="success" >
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</suspendResponse>

Enable User

The following is sample SPML code for the Resume request:

<resumeRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</resumeRequest>

The following is sample SPML code for the Resume response:

<resumeResponse status="success" >
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</resumeResponse>

Child Table Insert

The following is sample SPML code for the Modify request that captures the input for inserting child table data.

<modifyRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
  <modification>
    <dsml:modification name="Group Membership" operation="add">
      <dsml:value>AdminOra, System Admins, USA </dsml:value>
    </dsml:modification>
  </modification>
</modifyRequest>

Note:

There is no standard format for child table operations. Therefore, child data provisioning is handled through the SPML Modify request. The modification involves the use of a single attribute whose name is the same as the name of the corresponding child data set. The order in which field values are placed in the XML request file must be the same as the order in which the corresponding fields are displayed on the relevant child form. The data set name and field values are highlighted in bold font in the preceding XML code lines.

This also applies to the requests used for the Child Table Update and Child Table Delete operations.

The following is sample SPML code for the Modify response:

<modifyResponse status="success" >
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</modifyResponse>

Child Table Update

The following is sample SPML code for the Modify request that captures the input for updating child table data.

<modifyRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
  <modification>
  <dsml:modification name="Group Membership" operation="replace">
      <dsml:value>AdminOra, System Admins, USA </dsml:value>
    </dsml:modification>
  </modification>
</modifyRequest>

The following is sample SPML code for the Modify response:

<modifyResponse status="success" >
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</modifyResponse>

Child Table Delete

The following is sample SPML code for the Modify request that captures the input for deleting child table data.

<modifyRequest xmlns="urn:oasis:names:tc:SPML:2:0" xmlns:dsml="urn:oasis:names:tc:DSML:2:0:core">
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
  <modification>
    <dsml:modification name="Group Membership" operation="delete">
      <dsml:value>AdminOra, System Admins, USA </dsml:value>
    </dsml:modification>
  </modification>
</modifyRequest>

The following is sample SPML code for the Modify response:

<modifyResponse status="success" >
  <psoID ID="jdoe">
    <targetID ID="ADServer_124"/>
    <containerID ID="Contractors"/>
  </psoID>
</modifyResponse>

Web Services Transport Provider for Provisioning

The following are parameters of this provider:

In addition, the target Web service must meet the following requirements:

The following is the signature of a sample operation:

public byte[] doProvisioning(byte[] requestData){

In this sample, the name of the operation is doProvisioning.

Validation Providers

The following table describes the Validation providers that are shipped with this release of Oracle Identity Manager.

Validation Provider Description
IsNotBlankOrNulll Checks if the field value is null or blank
IsValidDate Checks if the field value is a valid date
IsInRange Checks if the field value is within a range specified by a minimum and maximum value pair
IsByte Checks if the field value can be converted to a byte primitive
IsDouble Checks if the field value can be converted to a double primitive
IsFloat Checks if the field value can be converted to a float primitive
IsInteger Checks if the field value can be converted to an integer primitive
IsLong Checks if the field value can be converted to a long primitive
IsShort Checks if the field value can be converted to a short primitive
MatchRegexp Checks if the field value matches the specified regular expression
MaxLength Checks if the length of the field value is less than or equal to the specified value
MinLength Checks if the length of the field value is greater than or equal to the specified value