Validate_SCIMv2_Realtime
Sample workflow to validate a SCIMv2 directory against a DirX Identity target system.
A validation workflow compares the content of the connected system with the state that DirX Identity
holds for the corresponding target system. It runs in one of two modes, controlled by the mode
parameter of the workflow:
-
InitialLoad - exports all accounts and groups and their relationships from the connected system and imports them into the target system subtree of the Identity Store in replace mode. Use this mode when you take a target system into operation.
-
Validation - detects deviations between the state known in DirX Identity and the state in the connected system, for example accounts or groups that were created or deleted outside of DirX Identity, and writes a message about each deviation into the "to do" field (
dxrToDo) of the affected target system object.
Both modes update the dxrTSState attribute and the group member attributes of the affected target
system objects.
Validate_SCIMv2_Realtime validates connected systems of type SCIMv2 against the corresponding
target system subtree in the Identity Store. In the factory data, dxminitialload is FALSE, so
the sample is prepared for regular validation runs after the initial load rather than for loading the
service content into DirX Identity.
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 / SCIMv2 |
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.4 |
Factory data path |
|
Prerequisites
-
A connected directory of type
SCIMv2that points to the SCIM service, with the bind profileAPI Client Authenticationset to client credentials that may read the users and groups that you want to validate. -
A target system of type
SCIMv2in the Identity Store that is linked to that connected directory, and a completed initial load, because the sample is delivered withdxminitialloadset toFALSE. -
The Java-based Server that runs the workflow must be able to reach both the SCIM service and the Identity Store; the Identity Store is accessed through the bind profile
Domain_Admin.
Workflow and Activities
| Activity | Type | Component description | Description | Ports |
|---|---|---|---|---|
|
|
|
Error Activity |
|
|
|
|
Join activity for the provision-to-TS workflow |
|
Ports
| Activity | Port | Component description | Connector | Connected directory | Bind profile | SSL |
|---|---|---|---|---|---|---|
|
|
|
|
- |
- |
not set |
|
|
|
|
- |
- |
not set |
|
|
|
|
|
|
not set |
|
|
|
|
- |
- |
not set |
|
|
|
|
|
|
not set |
Channels
| Channel | Description | Reference type | Delta type |
|---|---|---|---|
|
Channel for accounts |
OneToOne |
SearchAttributes |
|
Channel for groups |
OneToOne |
SearchAttributes |
|
Channel for members |
OneToOne |
SearchAttributes |
| Channel | Description | Reference type | Delta type |
|---|---|---|---|
|
Channel for accounts |
OneToOne |
SearchAttributes |
|
Channel for groups |
OneToOne |
SearchAttributes |
|
Channel for members |
OneToOne |
SearchAttributes |
|
Channel for setting a password |
OneToOne |
SearchAttributes |
Configuration Parameters
| Parameter | Default value |
|---|---|
|
FALSE |
|
P0Y0M4DT0H0M0S |
| Parameter | Default value |
|---|---|
|
|
|
3 |
|
P0Y0M1DT0H0M0S |
|
P0Y0M0DT2H0M0S |
| Parameter | Default value |
|---|---|
|
dxmPassword |
| Parameter | Default value |
|---|---|
|
SPMLv1 |
|
3 |
|
P0Y0M1DT0H0M0S |
|
P0Y0M0DT0H30M0S |
| Parameter | Default value |
|---|---|
|
event |
|
userPassword |
|
MQSERIES |
|
false |
| Parameter | Default value |
|---|---|
|
dxmPassword |
| Parameter | Default value |
|---|---|
|
userPassword |
| Parameter | Default value |
|---|---|
|
cn=uid-c0a88580-3213a6f6-17491112398—7e57,dxmC=Bind Profiles,cn=uid-ac1ef574-29f10ee8-173bd2d32a3—7ff9,dxmC=uid-7f001-11ed166-1015233918c—7925,dxmC=uid-7f001-54824-101de9c3b73—7fc0,dxmC=Connected Directories,dxmC=DirXmetahub |
|
password |
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 performs the validation work. Its IdentityDomain port reads the expected state
from the Identity Store over the accounts, groups and members channels, and its TS port
compares that state with the current content of the SCIM service. The CryptFilter on the TS
port decrypts protected attributes before the connector evaluates them.
A request that fails is retried up to three times (retrylimit) with 30 minutes between the
attempts (waitbeforeretry). If it still fails, the error activity takes it over and sends a
notification through the Message port; the workflow parameter timeout gives a request four days
before it is discarded.
Operation
-
You start a validation run for target system objects of type
SCIMv2. -
The Java-based Server passes the request to the
joinactivity of this workflow. -
The
IdentityDomainport reads the relevant accounts, groups and memberships from the Identity Store. -
The
TSport connects to the SCIM service and compares the current state of those objects with the state stored in DirX Identity. -
Deviations are written back into the Identity Store, where DirX Identity updates the validation state and records follow-up work on the affected target system objects.
-
The
eventport publishes the validation result as a JMS event; thenotifyport sends the configured e-mail notifications. -
Requests that fail permanently are handed to the
erroractivity, which reports them by e-mail.
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.