Ident_JDBC_Sync
Workflow for Export from Identity Store and Import to JDBC and backwards
Ident_JDBC_Sync is the scheduled sample workflow for comprehensive bidirectional synchronization between the Identity Store and a JDBC-connected database. It handles accounts, groups, group memberships, objects that must be deleted, and the follow-up synchronization that reads back database-assigned keys after new objects are created.
The workflow calls the companion sub-workflows JDBC2Ident_Sync_NewAcc, JDBC2Ident_Sync_NewGroup, Ident2JDBC_SyncAccountDel, and Ident2JDBC_SyncGroupDel. Together, these steps complete the write cycle for newly created objects and remove objects that are already marked for deletion in the Identity Store.
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 Scheduled / JDBC |
Technology |
Tcl-based scheduled workflow |
LDAP object class |
|
Workflow type |
|
Connected system / controller type |
- |
Configuration wizard |
|
Active in the factory data |
not set |
Factory data version |
7.0 |
Factory data path |
|
Prerequisites
-
Configure
JDBCImportandJDBCExportfor the JDBC-connected database that represents the target system. -
Configure
MetaCPfor the corresponding target system subtree in the Identity Store. -
Make sure the companion sub-workflows
Ident2JDBC_SyncAccountDel,Ident2JDBC_SyncGroupDel,JDBC2Ident_Sync_NewAcc, andJDBC2Ident_Sync_NewGroupare available and configured for the same JDBC target system.
Workflow and Activities
| Step | Activity | Description | Agent | Runs after |
|---|---|---|---|---|
1 |
|
export Identity Store accounts with dxrTSState=NONE(new to JDBC) |
|
start activity |
2 |
|
import new accounts to JDBC |
|
|
3 |
|
synch back new accounts to Role to get the JDBC keys |
- |
|
4 |
|
Export Identity Store Data via metacp Agent to file |
|
|
5 |
|
Import data file to JDBC Directory |
|
|
6 |
|
synch back new groups to Role to get the JDBC keys |
- |
|
7 |
|
export memberships to create or to delete in TS |
|
|
8 |
|
import new/deleted memberships |
|
|
9 |
|
export accounts to be deleted in JDBC |
- |
|
10 |
|
export groups to be deleted in JDBC |
- |
|
11 |
|
Export changed JDBC records |
|
|
12 |
|
import group/membership changes |
|
|
13 |
|
export changed accounts |
|
|
14 |
|
import account changes |
|
|
Jobs and Agents
| Activity | Job | Agent | Operation | Input channel | Output channel |
|---|---|---|---|---|---|
|
|
|
Full Export |
|
|
|
|
|
Full Import |
|
|
|
|
- |
not set |
- |
- |
|
|
|
Full Export |
|
|
|
|
|
Full Import |
|
|
|
|
- |
not set |
- |
- |
|
|
|
Full Export |
|
|
|
|
|
Full Import |
|
|
|
|
- |
not set |
- |
- |
|
|
- |
not set |
- |
- |
|
|
|
Full Export |
|
|
|
|
|
Full Export |
|
|
|
|
|
Full Export |
|
|
|
|
|
Full Export |
|
|
Configuration Parameters
| Parameter | Default value |
|---|---|
|
13 |
|
full |
|
0 |
|
FALSE |
|
REAL |
|
10 |
|
0 |
|
0 |
|
TRUE |
|
FALSE |
|
10 |
|
2 |
|
0 |
| Parameter | Default value |
|---|---|
|
9 |
| Parameter | Default value |
|---|---|
|
0 |
|
full |
|
0 |
|
FALSE |
|
REAL |
|
10 |
|
0 |
|
0 |
|
FALSE |
|
FALSE |
|
10 |
|
1 |
|
0 |
| Parameter | Default value |
|---|---|
|
9 |
|
full |
|
0 |
| Parameter | Default value |
|---|---|
|
0 |
|
full |
|
0 |
|
FALSE |
|
REAL |
|
10 |
|
0 |
|
0 |
|
TRUE |
|
FALSE |
|
10 |
|
1 |
|
0 |
| Parameter | Default value |
|---|---|
|
9 |
|
full |
|
0 |
| Parameter | Default value |
|---|---|
|
9 |
|
delta-or-full |
|
1 |
| Parameter | Default value |
|---|---|
|
9 |
|
full |
|
0 |
|
FALSE |
|
REAL |
|
10 |
|
0 |
|
0 |
|
TRUE |
|
FALSE |
|
10 |
|
2 |
|
0 |
| Parameter | Default value |
|---|---|
|
9 |
|
delta-or-full |
|
1 |
| Parameter | Default value |
|---|---|
|
0 |
|
full |
|
0 |
|
FALSE |
|
REAL |
|
10 |
|
0 |
|
0 |
|
TRUE |
|
FALSE |
|
10 |
|
1 |
|
0 |
A Tcl-based workflow runs scheduled in the C++-based Server (IdS-C). Its activities run in the order
defined by the dxmPredecessorActivity-DN chain, and each activity starts a job that runs one agent
with one input and one output channel. Agents exchange their data through files or directly through
the meta controller, so a typical workflow consists of an export activity that writes the data of the
connected system and an import activity that maps and loads that data into the Identity Store.
You start these workflows manually from the Identity Manager or attach them to a schedule.
In this workflow, the C++-based Server runs these activities in sequence:
-
Ident2JDBC_SyncAccount_MetaCPexports new or changed accounts from the Identity Store, andIdent2JDBC_SyncAccount_JDBCImportwrites them to the JDBC side. -
JDBC2Ident_SyncNewAccWFthen calls the companion workflow that reads back JDBC-assigned keys for newly created accounts. -
Ident2JDBC_SyncGroup_MetaCPexports groups from the Identity Store,Ident2JDBC_SyncGroup_JDBCImportwrites them to the JDBC side, andJDBC2Ident_SyncNewGroupWFreads back JDBC-assigned keys for newly created groups. -
Ident2JDBC_SyncGroupMembers_MetaCPexports membership changes, andIdent2JDBC_SyncGroupMembers_JDBCImportapplies those membership changes in the JDBC-connected database. -
Ident2JDBC_SyncAccountDelandIdent2JDBC_SyncGroupDelcall the companion deletion workflows for objects in stateTBDEL. -
JDBC2Ident_SyncGroup_JDBCExportandJDBC2Ident_SyncGroup_MetaCPsynchronize changed groups from JDBC back to the Identity Store, andJDBC2Ident_SyncAcc_JDBCExportplusJDBC2Ident_SyncAcc_MetaCPdo the same for accounts.
If one activity fails, the workflow stops at that point and the remaining activities do not run.
Operation
-
Start
Ident_JDBC_Syncmanually or on a schedule. -
The workflow begins with the Identity Store to JDBC direction for accounts, immediately followed by the companion workflow that reads back JDBC-assigned keys for newly created accounts.
-
It then repeats the same pattern for groups, synchronizes group memberships, and calls the dedicated deletion workflows for accounts and groups that are already in state
TBDELin the Identity Store. -
After the outbound work is complete, the workflow exports changed groups from the JDBC-connected database and imports them into the Identity Store, then does the same for changed accounts.
-
If a main activity or called sub-workflow fails, the remaining steps do not run. When the workflow finishes successfully, the Identity Store has processed the returned JDBC data and holds the keys that the database assigned to newly created objects.