User preferences
You can set up preferences for managed users, such as those related to marketing and news updates. You can then use those preferences as a filter when reconciling users to a target repository.
In the default project, common marketing preference options are included for the managed user object. You can see these preferences in the managed.json
file:
"preferences" : {
"title" : "Preferences",
"description" : "Preferences",
"viewable" : true,
"searchable" : false,
"userEditable" : true,
"type" : "object",
"usageDescription" : "",
"isPersonal" : false,
"properties" : {
"updates" : {
"description" : "Send me news and updates",
"type" : "boolean"
},
"marketing": {
"description" : "Send me special offers and services",
"type" : "boolean"
}
},
"order": [
"updates",
"marketing"
],
"required": []
},
To view these preferences using the admin UI:
-
From the navigation bar, click Configure > Managed Objects.
-
On the Managed Objects page, click User.
-
Select the Properties tab, scroll down the properties list, and click preferences.
The Managed Objects > user > preferences properties display:
Review preferences as an end user
When regular users log in to the End User UI, they’ll refer to the preferences described in User preferences. When they accept the preferences, their managed user objects are updated with entries similar to the following:
"preferences" : {
"updates" : true,
"marketing" : true
},
User preferences and reconciliation
You can configure user preferences as a filter for reconciliation. For example, if some users don’t want marketing emails, you can filter those users out of any reconciliation operation.
To configure user preferences as a reconciliation filter using the admin UI:
-
From the navigation bar, click Configure > Mappings, and select a mapping.
-
Click the Association tab, and expand the Individual Record Validation node.
-
From the Valid Source drop-down list, select Validate based on user preferences.
-
Select the applicable preferences checkboxes.
For example, if you select the Send me news and updates checkbox, users who have opted-in to that preference will be reconciled from the source to the target repository.
-
Click Save.
What IDM does during this reconciliation depends on the policy associated with the UNQUALIFIED
situation for avalidSource
. The default action is to delete the target object (user). For more information, refer to How IDM assesses synchronization situations.
Alternatively, edit the mapping file directly. The following excerpt of a mapping file includes preferences
as conditions to define a validSource
on an individual record validation. IDM applies these conditions at the next reconciliation.
"validSource" : {
"type" : "text/javascript",
"globals" : {
"preferences" : [
"updates",
"marketing"
]
},
"file" : "ui/preferenceCheck.js"
},
"validTarget" : {
"type" : "text/javascript",
"globals" : { },
"source" : ""
}