ADS_Ident_Realtime_Delta
Sample workflow to synchronize deltas from an Active Directory domain.
A delta workflow reads the changes that were made in the connected system since the previous run and imports them into the target system subtree of the Identity Store. It works in the opposite direction of the provisioning workflow: it does not push the state of DirX Identity into the connected system, but picks up what changed in the connected system.
The delta detection is configured per channel through dxmDeltaType; the workflow stores the last
processed delta value and continues from there on the next run, so only new changes are transferred.
ADS_Ident_Realtime_Delta synchronizes provisioning deltas for connected systems of type ADS. You use it when the Identity Store already holds the target system state and you want follow-up changes for accounts, groups, memberships and passwords to reach the connected directory through the real-time provisioning path.
Because tscluster and tsresource are both *, the workflow is not tied to one fixed forest or domain in the factory data. You attach the copied workflow to the ADS target system instance that should receive the delta request.
The workflows in this reference are delivered as factory data and are loaded into the Connectivity configuration database during the initial configuration. They are samples: use the Identity Manager to copy a workflow into your own scenario and adapt the copy. Do not change the delivered objects, because a product update can replace them.
At a Glance
Name |
|
Category |
Target Realtime / ADS |
Technology |
Java-based real-time workflow |
LDAP object class |
|
Workflow type |
|
Connected system / controller type |
|
Configuration wizard |
|
Active in the factory data |
FALSE |
Factory data version |
8.0 |
Factory data path |
|
Prerequisites
-
You configure a connected directory of type
ADSthat uses theAdsConnectorand the bind profileADSadmin. -
You make the
Identity Storeavailable through the bind profileDomain_Adminand theADSconnected directory available through theTSport of the Java-based Server. -
Because the
TSport uses SSL, the connected directory accepts that connection and the Java-based Server trusts the certificate that it presents. -
You already have the relevant
ADStarget system subtree in the Identity Store, so the workflow can read the current state overaccounts,groupsandmembers.
Workflow and Activities
| Activity | Type | Component description | Description | Ports |
|---|---|---|---|---|
|
|
|
Error Activity |
|
|
|
|
Join activity for the provision-to-ADS workflow |
|
Ports
| Activity | Port | Component description | Connector | Connected directory | Bind profile | SSL |
|---|---|---|---|---|---|---|
|
|
|
|
- |
- |
not set |
|
|
|
|
- |
- |
not set |
|
|
|
|
|
|
not set |
|
|
|
|
- |
- |
not set |
|
|
|
|
|
|
TRUE |
Channels
| Channel | Description | Reference type | Delta type |
|---|---|---|---|
|
Channel for accounts |
OneToOne |
SearchAttributes |
|
Channel for groups |
OneToOne |
SearchAttributes |
|
Channel for account - group memberships |
OneToOne |
SearchAttributes |
| Channel | Description | Reference type | Delta type |
|---|---|---|---|
|
Channel for accounts |
OneToOne |
SearchAttributes |
|
Channel for groups |
OneToOne |
SearchAttributes |
|
Channel for account - group memberships |
OneToOne |
SearchAttributes |
|
Channel for setting a password |
OneToOne |
SearchAttributes |
Configuration Parameters
| Parameter | Default value |
|---|---|
|
P0Y0M4DT0H0M0S |
|
* |
|
* |
| Parameter | Default value |
|---|---|
|
|
|
3 |
|
P0Y0M1DT0H0M0S |
|
P0Y0M0DT2H0M0S |
| Parameter | Default value |
|---|---|
|
dxmPassword |
| Parameter | Default value |
|---|---|
|
ADS |
|
3 |
|
P0Y0M1DT0H0M0S |
|
P0Y0M0DT0H30M0S |
| Parameter | Default value |
|---|---|
|
event |
|
userPassword |
|
false |
| Parameter | Default value |
|---|---|
|
userPassword |
| Parameter | Default value |
|---|---|
|
userPassword |
| Parameter | Default value |
|---|---|
|
unicodePwd |
A Java-based real-time workflow runs as a permanently loaded configuration in the Java-based Server (IdS-J). It is triggered by a request or an event rather than by a schedule. Each workflow consists of activities; an activity opens one port per system it talks to, and each port uses a connector to reach that system.
Most provisioning workflows contain a join activity that performs the actual work and an error
activity that receives requests which still fail after all retries and sends a notification about
them. The retrylimit, waitbeforeretry and timeout parameters of an activity control how often
and how long a failed request is retried before it is handed to the error activity.
The event port publishes change events over JMS, and the notify port sends e-mail notifications.
Neither port is bound to a connected directory.
The join activity reads the requested state from IdentityDomain and sends the matching delta to TS. It uses the accounts, groups and members channels on both ports, and it uses setPassword on TS when the delta contains a password change. The CryptFilter decrypts unicodePwd before the AdsConnector receives it.
If processing fails, join retries the request three times and waits 30 minutes between attempts. If the request still fails, the workflow passes it to error, which sends the notification through Message. The workflow-level timeout keeps the request for up to four days.
Operation
-
You trigger a delta request for an object or membership in the
ADStarget system subtree of the Identity Store. -
You let the Java-based Server pass the request to
join. -
You let
IdentityDomainread the affected state overaccounts,groupsormembers. -
You let
TSapply the corresponding change in the connected directory and usesetPasswordif the request contains a password update. -
You let the workflow write the result back to the Identity Store, publish the provisioning event through
eventand send the configured notification throughnotify. -
If the request still fails after the configured retries, you let
errorreport the failure throughMessage.
The workflow is delivered inactive (dxmActive is FALSE). Copy it into your own scenario, connect the copy to your connected directory and activate the copy.