
Resource wizard: Object type synchronization
Since 4.9
This functionality is available since version 4.9.
|
You can use the synchronization rules wizard to define reactions to synchronization situations. These situation–action pairs represent the state of resource objects (e.g., accounts) in relation to midPoint and appropriate actions to be executed by midPoint in the particular situation.

Set up synchronization rules
-
In Resources > All Resources, select your resource.
-
In Accounts, click Configure > Synchronization.
-
Click Add reaction and set up the name, situation, action, and lifecycle state for each situation–action pair.
-
Click Save synchronization settings when done.
You can delete a reaction using the Delete button.

You can access a more complex configurations for each reaction using the Edit button:
Possible situations and actions
For each reaction rule, you need to configure its name, situation, action, and the lifecycle state of the rule:
-
Name of the reaction rule configuration. This is technically not mandatory but helps a lot during troubleshooting and when using resource template inheritance.
-
Situation can be the following:
-
Linked: The resource object is linked to its midPoint owner (focus object).
-
Unlinked: A new resource object has been found and its owner (focus) can be determined but there is no link between them.
-
Deleted: There is a focus in midPoint for the resource object but the resource object no longer exists.
-
Unmatched: A new resource object has been found but midPoint cannot determine any owner (focus) for the account.
-
Disputed: The midPoint has determined multiple potential midPoint owners (foci) for a single resource account. Alternatively, this may be a result of a correlation with an outcome that isn’t fully trusted.
-
-
Action defines what to do in a particular situation:
-
Add focus: Create a new object in midPoint based on the resource data.
-
Synchronize: Synchronize data between midPoint object (focus) and resource data based on object type mappings. Typically used for the linked situation.
-
Link: Link previously not linked resource object to focus.
-
Delete resource object: Delete resource object.
-
Inactivate resource object: Inactivate (disable) resource object.
-
Inactivate focus: Inactivate (disable) midPoint object.
-
Delete focus: Delete midPoint object.
-
Create correlation case: Create a case to let midPoint administrator resolve the situation interactively (useful for the Disputed situation).
-
-
Lifecycle state defines the lifecycle state of the reaction rule. Useful for simulations.
The setup of reactions to situations is up to you. For example, it’s perfectly fine to have the action Add focus for the Unmatched situation when the resource is authoritative. For non-authoritative target systems, though, you would probably want to use the Inactivate resource object action in such a situation. |
Refer to Focus and Projections for an explanation of the term focus. In the most basic scenarios when synchronizing users and their accounts, focus corresponds to the user object in midPoint.
Configuration of resource wizard panels
Some wizard panels are configurable, for more information see Wizard panels.
How to Use Lifecycle States
You can use different lifecycle states for resources, object types, attributes, mappings, synchronization situations, and other aspects of resource configuration. You can use the lifecycle state property for simulations. Resources are created in the Proposed lifecycle state by default, and don’t work in normal deployment before switching the state to Active.
You can use the Proposed lifecycle state to test (simulate) the configuration without causing any damage to your target system data. When the simulation results are satisfactory, you can switch the lifecycle state to Active.
You can set different lifecycle states for various configuration items, which lets you put specific parts of configuration to production incrementally.
For example, after you switch your resource to the Active lifecycle state, you can add new mappings in Proposed lifecycle state first. You can simulate the new mapping safely and switch it to Active when it’s ready.
See also: