Welcome to Cool Solutions
How to do reconciliation in IDM 3.5
IDM – Reconciliation for AD
-
This document describes the setup and configuration for performing reconciliation against the AD system.
-
Both the IDM AD and Null drivers are used.
-
Testing of the AD reconciliation was performed on the following setup:
-
The setup and configuration will need to be tested for other target systems.
IDVault setup
-
This process works only for IDM drivers/target systems that support the query-ex function.
-
A new effective object class was created in the IDVault, with the following attributes:
|
Class name |
ReconMark |
||
|
Inherit from class |
Top |
||
|
Can be contained by |
O OU DirXML-Driver DirXML-DriverSet |
||
|
Attributes |
CN |
Naming, mandatory |
|
|
ReconStart |
Case insensitive string, single-valued |
A change in this attribute will start the reconciliation |
|
|
ReconCont |
Case insensitive string, single-valued |
A change in this attribute will indicate that query-ex is not |
|
|
ReconContTemp |
Case insensitive string, single-valued |
Temporary holding attribute, to workaround the loop-back detection constraint. |
|
|
ReconContToken |
Case insensitive string, single-valued |
This attribute holds the query-token that is used to continue the query-ex. |
|
|
ReconComplete |
Boolean |
Indicates if the reconciliation process has been completed. |
|
|
ReconResults |
Case insensitive string, multi-valued |
Holds the source-DN for all users in that target system that are not associated in the IDVault. |
-
A new ReconMark-class object is created for each target system that:
-
has an IDM driver
-
will have reconciliation performed against it
-
-
In the test environment, the .ADRecon.system object was created.
-
A screenshot of the LDAP view of the ADRecon object is shown below.
IDM AD Driver Modifications
-
AD driver filter
-
Modified to allow the object
class “ReconMark” and associated attributes. -
See screen capture below for
details.
-
-
Subscriber Event Transform
-
The “TriggerTokenQuery” policy is added to the AD Subscriber Event Transform.
-
Two rules are contained in “TriggerTokenQuery”:
-
TriggerTokenQuery
-
Starts the reconciliation process by inserting a “query” event, when a change in the “ReconStart” attribute of the ADRecon object is detected.
-
A specific event-id is created for the query event.
-
Sets the ReconComplete attribute of the ADRecon object to “0” (false).
-
Clears the ReconResults attribute values of the ADRecon object.
-
-
ContinueTokenQuery
-
Detects a change in the “ReconCont” attribute, and inserts a “query-ex” to continue the query
operation, using the “ReconContToken” attribute value.
-
-
-
-
Publisher Input Transform
-
The “QueryExReturn” rule is added to the AD Publisher Input Transform.
-
This policy is triggered only for events that have the specific event-id the AD reconciliation
process will have.-
The query-results will always have this event-id.
-
-
The rule will set a local variable “dredge-complete” to false.
-
The query results are processed, with each node being processed as follows:
-
For every query-result instance:
-
If the user object is associated in the IDVault, veto the instance. No further action is required.
-
If the user object is NOT associated in the IDVault, write the user object source-DN into the ReconResults attribute of the ADRecon object, then veto the instance.
-
-
If a “query-token” node is found, this indicates that the query-ex operation is not complete, and more results are expected. The following action will be taken:
-
Write the query-token value to the ReconContToken attribute of the ADRecon object.
-
This value will be used to indicate which query-ex operation is being continued.
-
-
Set the ReconContTemp attribute of the ADRecon object to the current time, in milliseconds
since 1 January 1970.-
This is used to workaround the loop-back detection of the IDM engine/driver.
-
Milliseconds is used to ensure that there will be changes to the value.
-
-
Set the local variable “dredge-complete” to “false”, to indicate the query-ex process has not
been completed.
-
-
The last node in the results will always be “query-status”.
-
If the local variable “dredge-complete” is “true”, then set the “ReconComplete” attribute of the ADRecon object to “true”.
-
Else take no action.
-
-
-
IDM Null Driver Modifications
-
Null driver filter
-
Modified to allow the object class “ReconMark” and associated attributes.
-
See screen capture below for details.
-
-
Subscriber Event Transform
-
The policy “ContinueDredge” is added to the Subscriber Event Transform.
-
The rule “ContinueDredge” is added to the policy, and performs the following:
-
If the attribute “ReconContTemp” value is changing for the ADRecon object, then write the value into the “ReconCont” attribute of the ADRecon object.
-
-
Work to be completed
-
Configure a workflow to initiate the reconciliation process, with the following proposed functionality (may not implement all):
-
User can select the target system to perform the reconciliation process against, from a drop-down
list.-
This will require the ReconMark objects to be created for each target system.
-
-
User can specify the date/time to start the reconciliation process (schedule).
-
User can specify who to send the reconciliation results to.
-
The workflow will create the necessary work order/job to schedule the reconciliation.
-
Upon initiation, the workflow should watch for completion of the reconciliation process, by monitoring the ReconComplete attribute of the specific ReconMark object. You can sleep for 1 minute and check the the completion attribute value, if it is done already, you can actually retrieve the recon result and display on the page for next action
-
Upon completion of the reconciliation process, query the ReconResults attribute for the un-associated user objects, and return the results to the designated recipient.
-
| Attachment | Size |
|---|---|
| AD.zip | 29.4 KB |
- To leave a comment you need to Login or Register
- 649 reads



Print
Email
RSS
Digg
Slashdot
nice work..
nice work..
can you also suggest a method to report the failed recons and multiple matches if there