Référence des règles de données pour personnaliser et transformer les attributs d'identité et de compte
Vous pouvez ajouter des règles pour personnaliser ou transformer des attributs d'identité et de compte. Ces règles sont écrites dans JavaScript.
Objets
|
Nom de l'objet |
Fonction |
Exemple |
|---|---|---|
|
requestAttributes |
Objet d'attribut de demande de provisionnement. Ces attributs sont disponibles lorsque le provisionnement se fait au moyen de politiques, de demandes d'ensemble d'accès, de rôles ou de méthodes directes. |
|
|
utilisateur |
Objet utilisateur. Utilisez l'accesseur requis pour accéder à n'importe quel membre. |
|
|
application |
Objet de ressource. Utilisez l'accesseur requis pour accéder à n'importe quel membre. |
|
|
Nom de l'objet |
Fonction |
Exemple |
|---|---|---|
|
utilisateur |
Objet utilisateur. Utilisez l'accesseur requis pour accéder à n'importe quel membre de la source d'identité. |
user.getName().getGivenName(), user.getUserName()
|
|
compte |
Objet de compte. Utilisez l'accesseur requis pour accéder à n'importe quel membre pour gérer les autorisations. |
account.getDisplayName()
|
Meilleures pratiques pour transformer ou personnaliser les attributs d'identité et de compte
Voici quelques bonnes pratiques et recommandations à prendre en compte :
- Vous pouvez transformer ou personnaliser les attributs d'identité et de compte pour les données entrantes ingérées à partir de sources faisant autorité ou de systèmes gérés. Toutefois, vous ne pouvez transformer les attributs d'identité (utilisateur) que pour les données sortantes.
- Exécutez toujours une règle d'archivage NULL pour les valeurs extraites avant de les utiliser, sinon cela peut entraîner des échecs de cycle d'ingestion sur les références NULL. Cela doit être fait à la fois pour l'objet d'attributs d'utilisateur dans les sources faisant autorité et pour l'objet d'attributs de compte dans les systèmes gérés pour les transformations entrantes.
- Vous ne pouvez pas transformer ou affecter directement une valeur à des attributs ayant un type de données d'objet de tableau, c'est-à-dire des attributs retournant une liste de valeurs, tels que des courriels, des photos et des adresses, mais vous pouvez les utiliser pour modifier/manipuler d'autres attributs d'utilisateur ou de compte. Par exemple, pour définir la valeur de pays comme valeur par défaut de l'emplacement d'attribut si un emplacement est nul, utilisez :
user.getLocation() !=null ? user.getLocation() : user.getAddresses()[0].getCountry()
Attributs d'objet d'identité source faisant autorité pour la transformation sortante
Vous pouvez modifier ou modifier les données sortantes en appliquant des règles de transformation des données aux données disponibles ou provisionnées dans le système orchestré. Voici une liste des attributs d'identité (utilisateur) disponibles pour utilisation dans les transformations de données sortantes.
Syntaxe pour extraire les attributs d'identité des données sortantes
Ces détails peuvent être extraits à l'aide de la syntaxe :
get<FieldName>()
Extraire le nom de l'utilisateur
user.getName().getGivenName()
| Attribut | Sous-attribut | Type de données | Syntaxe |
|---|---|---|---|
|
name |
Référence |
user.getName()
|
|
|
formaté |
Chaîne |
user.getName().getFormatted()
|
|
|
familyName |
Chaîne |
user.getName().getFamilyName()
|
|
|
givenName |
Chaîne |
user.getName().getGivenName()
|
|
|
middleName |
Chaîne |
user.getName().getMiddleName()
|
|
|
honorificPrefix |
Chaîne |
user.getName().getHonorificPrefix()
|
|
|
honorificSuffix |
Chaîne |
user.getName().getHonorificSuffix()
|
|
|
userName |
Chaîne |
user.getUserName()
|
|
|
displayName |
Chaîne |
user.getDisplayName()
|
|
|
description |
Chaîne |
user.getDescription()
|
|
|
primaryEmail |
Chaîne |
user.getPrimaryEmail()
|
|
|
userType |
Chaîne |
user.getUserType()
|
|
|
titre |
Chaîne |
user.getTitle()
|
|
|
employeeNumber |
Chaîne |
user.getEmployeeNumber()
|
|
|
organization |
Référence |
user.getOrganization()
|
|
|
valeur |
Chaîne |
user.getOrganization().getValue()
|
|
|
réf. |
Chaîne |
user.getOrganization().getRef()
|
|
|
displayName |
Chaîne |
user.getOrganization().getDisplayName()
|
|
|
resourceType |
Chaîne |
user.getOrganization().getResourceType()
|
|
|
service |
Chaîne |
user.getDepartment()
|
|
|
gestionnaire |
Référence |
user.getManager()
|
|
|
valeur |
Chaîne |
user.getManager().getValue()
|
|
|
réf. |
Chaîne |
user.getManager().getRef()
|
|
|
displayName |
Chaîne |
user.getManager().getDisplayName()
|
|
|
resourceType |
Chaîne |
user.getManager().getResourceType()
|
|
|
statut |
Chaîne |
user.getStatus()
|
|
|
jobCode |
Chaîne |
user.getJobCode()
|
|
|
État |
Chaîne |
user.getState()
|
|
|
risque |
Chaîne |
user.getRisk()
|
|
|
emplacement |
Chaîne |
user.getLocation()
|
|
|
courriels |
Liste de courriels |
|
|
|
pendingVerificationData |
Chaîne |
email.getPendingVerificationData()
|
|
|
principal |
Boolean |
email.getPrimary()
|
|
|
secondaire |
Boolean |
email.getSecondary()
|
|
|
type |
Chaîne |
email.getType()
|
|
|
valeur |
Chaîne |
email.getValue()
|
|
|
vérifié |
Boolean |
email.getVerified()
|
|
|
adresses |
Liste d'adresses |
|
|
|
pays |
Chaîne |
address.getCountry()
|
|
|
formaté |
Chaîne |
address.getFormatted()
|
|
|
localité |
Chaîne |
address.getLocality()
|
|
|
Code postal |
Chaîne |
address.getPostalCode()
|
|
|
principal |
Boolean |
address.isPrimary()
|
|
|
région |
Chaîne |
address.getRegion()
|
|
|
streetAddress |
Chaîne |
address.getStreetAddress()
|
|
|
type |
Chaîne |
address.getType()
|
|
|
phoneNumbers |
Liste de PhoneNumber |
|
|
|
afficher |
Chaîne |
phoneNumber.getDisplay()
|
|
|
principal |
Boolean |
phoneNumber.isPrimary()
|
|
|
type |
Chaîne |
phoneNumber.getType()
|
|
|
valeur |
Chaîne |
phoneNumber.getValue()
|
|
|
Boolean |
phoneNumber.isVerified()
|
Attributs d'objet d'identité source faisant autorité pour la personnalisation des attributs de transformation et d'identité entrants
Vous pouvez modifier ou modifier les données entrantes en appliquant des règles de transformation de données pendant la phase d'ingestion des données dans le système orchestré. Vous pouvez utiliser le même jeu d'attributs pour personnaliser le profil d'identité composite construit dans Oracle Access Governance en transformant les attributs d'identité.
Syntaxe pour extraire les attributs d'identité des données entrantes
Les détails de l'attribut peuvent être extraits à l'aide de la syntaxe :
get<FieldName>()
Extraire le nom de l'utilisateur
user.getName().getGivenName()
| Attribut | Sous-attribut | Type de données | Syntaxe |
|---|---|---|---|
|
fullName (pour OIG/ICF) |
Référence |
user.getFullName()
|
|
|
formaté |
Chaîne |
user.getFullName().getFormatted()
|
|
|
familyName |
Chaîne |
user.getFullName().getFamilyName()
|
|
|
givenName |
Chaîne |
user.getFullName().getGivenName()
|
|
|
middleName |
Chaîne |
user.getFullName().getMiddleName()
|
|
|
honorificPrefix |
Chaîne |
user.getFullName().getHonorificPrefix()
|
|
|
honorificSuffix |
Chaîne |
user.getFullName().getHonorificSuffix()
|
|
|
nom (pour OCI) |
Référence |
user.getName()
|
|
|
formaté |
Chaîne |
user.getName().getFormatted()
|
|
|
familyName |
Chaîne |
user.getName().getFamilyName()
|
|
|
givenName |
Chaîne |
user.getName().getGivenName()
|
|
|
middleName |
Chaîne |
user.getName().getMiddleName()
|
|
|
honorificPrefix |
Chaîne |
user.getName().getHonorificPrefix()
|
|
|
honorificSuffix |
Chaîne |
user.getName().getHonorificSuffix()
|
|
|
userName |
Chaîne |
user.getUserName()
|
|
|
displayName |
Chaîne |
user.getDisplayName()
|
|
|
description |
Chaîne |
user.getDescription()
|
|
|
primaryEmail |
Chaîne |
user.getPrimaryEmail()
|
|
|
userType |
Chaîne |
user.getUserType()
|
|
|
titre |
Chaîne |
user.getTitle()
|
|
|
employeeNumber |
Chaîne |
user.getEmployeeNumber()
|
|
|
organization |
Référence |
user.getOrganization()
|
|
|
valeur |
Chaîne |
user.getOrganization().getValue()
|
|
|
réf. |
Chaîne |
user.getOrganization().getRef()
|
|
|
displayName |
Chaîne |
user.getOrganization().getDisplayName()
|
|
|
resourceType |
Chaîne |
user.getOrganization().getResourceType()
|
|
|
service |
Chaîne |
user.getDepartment()
|
|
|
gestionnaire |
Référence |
user.getManager()
|
|
|
valeur |
Chaîne |
user.getManager().getValue()
|
|
|
réf. |
Chaîne |
user.getManager().getRef()
|
|
|
displayName |
Chaîne |
user.getManager().getDisplayName()
|
|
|
resourceType |
Chaîne |
user.getManager().getResourceType()
|
|
|
statut |
Chaîne |
user.getStatus()
|
|
|
jobCode |
Chaîne |
user.getJobCode()
|
|
|
État |
Chaîne |
user.getState()
|
|
|
risque |
Chaîne |
user.getRisk()
|
|
|
emplacement |
Chaîne |
user.getLocation()
|
|
|
compartmentId |
Chaîne |
user.getCompartmentId()
|
|
|
domainId |
Chaîne |
user.getDomainId()
|
|
|
domainOCID |
Chaîne |
user.getDomainOCID()
|
|
|
région |
Chaîne |
user.getRegion()
|
|
|
courriels |
Liste de courriels |
emails = user.getEmails()
|
|
|
pendingVerificationData |
Chaîne |
user.getEmails()[0].getPendingVerificationData()
|
|
|
principal |
Boolean |
user.getEmails()[0].getPrimary()
|
|
|
secondaire |
Boolean |
user.getEmails()[0].getSecondary()
|
|
|
type |
Chaîne |
user.getEmails()[0].getType()
|
|
|
valeur |
Chaîne |
user.getEmails()[0].getValue()
|
|
|
vérifié |
Boolean |
user.getEmails()[0].getVerified()
|
|
|
adresses |
Liste d'adresses |
|
|
|
pays |
Chaîne |
user.getAddresses()[0].getCountry()
|
|
|
formaté |
Chaîne |
user.getAddresses()[0].getFormatted()
|
|
|
localité |
Chaîne |
user.getAddresses()[0].getLocality()
|
|
|
Code postal |
Chaîne |
user.getAddresses()[0].getPostalCode()
|
|
|
principal |
Boolean |
user.getAddresses()[0].isPrimary()
|
|
|
région |
Chaîne |
user.getAddresses()[0].getRegion()
|
|
|
streetAddress |
Chaîne |
user.getAddresses()[0].getStreetAddress()
|
|
|
type |
Chaîne |
user.getAddresses()[0].getType()
|
|
|
phoneNumbers |
Liste de PhoneNumber |
|
|
|
afficher |
Chaîne |
user.getPhoneNumbers()[0].getDisplay()
|
|
|
principal |
Boolean |
user.getPhoneNumbers()[0].isPrimary()
|
|
|
type |
Chaîne |
user.getPhoneNumbers()[0].getType()
|
|
|
valeur |
Chaîne |
user.getPhoneNumbers()[0].getValue()
|
|
|
Boolean |
user.getPhoneNumbers()[0].isVerified()
|
||
|
photos |
Liste des photos |
|
|
|
afficher |
Chaîne |
user.getPhotos()[0].getDisplay()
|
|
|
principal |
Boolean |
user.getPhotos()[0].isPrimary()
|
|
|
type |
Chaîne |
user.getPhotos()[0].getType()
|
|
|
valeur |
Chaîne |
user.getPhotos()[0].getValue()
|
|
|
im |
Liste des im |
|
|
|
afficher |
Chaîne |
user.getIms()[0].getDisplay()
|
|
|
principal |
Boolean |
user.getIms()[0].isPrimary()
|
|
|
type |
Chaîne |
user.getIms()[0].getType()
|
|
|
valeur |
Chaîne |
user.getIms()[0].getValue()
|
Attributs d'objet de compte de systèmes gérés pour la transformation entrante
Vous pouvez modifier ou modifier les données d'attribut de compte entrant en appliquant des règles de transformation de données lors de la phase d'ingestion des données dans le système orchestré.
Syntaxe pour extraire les attributs de compte pour la transformation des données entrantes
Les détails de l'attribut peuvent être extraits à l'aide de la syntaxe :
get<FieldName>()
Extraire le nom de l'utilisateur
account.getName().getGivenName()
| Attribut | Sous-attribut | Type de données | Syntaxe |
|---|---|---|---|
|
fullName |
Référence |
account.getFullName()
|
|
|
formaté |
Chaîne |
account.getFullName().getFormatted()
|
|
|
familyName |
Chaîne |
account.getFullName().getFamilyName()
|
|
|
givenName |
Chaîne |
account.getFullName().getGivenName()
|
|
|
middleName |
Chaîne |
account.getFullName().getMiddleName()
|
|
|
honorificPrefix |
Chaîne |
account.getFullName().getHonorificPrefix()
|
|
|
honorificSuffix |
Chaîne |
account.getFullName().getHonorificSuffix()
|
|
|
userName |
Chaîne |
account.getUserName()
|
|
|
displayName |
Chaîne |
account.getDisplayName()
|
|
|
description |
Chaîne |
account.getDescription()
|
|
|
primaryEmail |
Chaîne |
account.getPrimaryEmail()
|
|
|
userType |
Chaîne |
account.getUserType()
|
|
|
titre |
Chaîne |
account.getTitle()
|
|
|
statut |
Chaîne |
account.getStatus()
|
|
|
accountType |
Chaîne |
account.getAccountType()
|
|
|
provisionedByMechanism |
Chaîne |
account.getProvisionedByMechanism()
|
|
|
provisionedOnDate |
Chaîne |
account.getProvisionedOnDate()
|
|
|
resourceName |
Chaîne |
account.getResourceName()
|
|
|
startDate |
Long |
account.getStartDate()
|
|
|
name |
Chaîne |
account.getName()
|
|
|
userLogin |
Chaîne |
account.getUserLogin()
|
|
|
resourcesId |
Chaîne |
account.getResourcesId()
|
|
|
compartmentId |
Chaîne |
account.getCompartmentId()
|
|
|
domainId |
Chaîne |
account.getDomainId()
|
|
|
domainOCID |
Chaîne |
account.getDomainOCID()
|
|
|
région |
Chaîne |
account.getRegion()
|
|
|
courriels |
Liste de courriels |
emails = account.getEmails()
|
|
|
pendingVerificationData |
Chaîne |
account.getEmails()[0].getPendingVerificationData()
|
|
|
principal |
Boolean |
account.getEmails()[0].getPrimary()
|
|
|
secondaire |
Boolean |
account.getEmails()[0].getSecondary()
|
|
|
type |
Chaîne |
account.getEmails()[0].getType()
|
|
|
valeur |
Chaîne |
account.getEmails()[0].getValue()
|
|
|
vérifié |
Boolean |
account.getEmails()[0].getVerified()
|
|
|
adresses |
Liste d'adresses |
addresses = account.getAddresses();
|
|
|
pays |
Chaîne |
account.getAddresses()[0].getCountry()
|
|
|
formaté |
Chaîne |
account.getAddresses()[0].getFormatted()
|
|
|
localité |
Chaîne |
account.getAddresses()[0].getLocality()
|
|
|
Code postal |
Chaîne |
account.getAddresses()[0].getPostalCode()
|
|
|
principal |
Boolean |
account.getAddresses()[0].isPrimary()
|
|
|
région |
Chaîne |
account.getAddresses()[0].getRegion()
|
|
|
streetAddress |
Chaîne |
account.getAddresses()[0].getStreetAddress()
|
|
|
type |
Chaîne |
account.getAddresses()[0].getType()
|
|
|
phoneNumbers |
Liste de PhoneNumber |
phoneNumbers = account.getPhoneNumbers()
|
|
|
afficher |
Chaîne |
account.getPhoneNumbers()[0].getDisplay()
|
|
|
principal |
Boolean |
account.getPhoneNumbers()[0].isPrimary()
|
|
|
type |
Chaîne |
account.getPhoneNumbers()[0].getType()
|
|
|
valeur |
Chaîne |
account.getPhoneNumbers()[0].getValue()
|
|
|
Boolean |
account.getPhoneNumbers()[0].isVerified()
|
||
|
photos |
Liste des photos |
photos = account.getPhotos()
|
|
|
afficher |
Chaîne |
account.getPhotos()[0].getDisplay()
|
|
|
principal |
Boolean |
account.getPhotos()[0].isPrimary()
|
|
|
type |
Chaîne |
account.getPhotos()[0].getType()
|
|
|
valeur |
Chaîne |
account.getPhotos()[0].getValue()
|
|
|
im |
Liste des im |
ims = account.getIms()
|
|
|
afficher |
Chaîne |
account.getIms()[0].getDisplay()
|
|
|
principal |
Boolean |
account.getIms()[0].isPrimary()
|
|
|
type |
Chaîne |
account.getIms()[0].getType()
|
|
|
valeur |
Chaîne |
account.getIms()[0].getValue()
|
Règle d'attribut multiple dans la transformation entrante
À l'aide de règles de transformation, vous pouvez générer une valeur unique et mapper cette valeur à plusieurs attributs à la fois dans la transformation entrante.
Cette règle règle règle règle règle les attributs description et Création à la valeur tempName. Vous devez supprimer les règles d'attribut unique précédentes pour les attributs avant de les utiliser dans une règle à attributs multiples.
var tempName = user.getUserName() == null ? null : user.getUserName().concat('-', user.getExternalId());
multipleAttribute.setAttribute('description', tempName);
multipleAttribute.setCustomAttribute('Building', tempName);
À l'aide de cette règle, vous pouvez définir une valeur pour description et building dans une seule règle. Sélectionnez Oui pour Est-ce que ce jeu de règles comporte plusieurs attributs? et sélectionnez les attributs pertinents.
Sortie :
description: "jsmith-12345"
Building: "jsmith-12345"
Attributs d'utilisateur et de compte personnalisés
Vous pouvez extraire et utiliser des attributs d'utilisateur ou de compte personnalisés lors de l'application de règles de transformation de données pour les transformations de données entrantes. Les transformations de données sortantes permettent d'extraire uniquement les attributs d'utilisateur personnalisés.
Attribut personnalisé d'utilisateur
Oracle Access Governance fournit une méthode d'utilitaire pour extraire l'attribut personnalisé d'un utilisateur pour les transformations entrantes ou sortantes. Pour extraire la valeur CUSTOM_ATTRIBUTE_NAME d'un utilisateur, utilisez la syntaxe suivante, par exemple :
if( user.getCustomAttributes() != null ) {user.getCustomAttributes()['CUSTOM_ATTRIBUTE_NAME'] }
Par exemple, pour un attribut personnalisé appelé Marqueurs :
if( user.getCustomAttributes() != null ) {user.getCustomAttributes()['Tags'] }
Pour un attribut personnalisé de type date :
if( user.getCustomAttributes() != null ) {new Number(user.getCustomAttributes()['SOME_DATE']) }
Attribut personnalisé de compte
Oracle Access Governance fournit une méthode d'utilitaire pour extraire l'attribut personnalisé d'un compte uniquement pour les transformations entrantes. Pour extraire la valeur CUSTOM_ATTRIBUTE_NAME d'un compte, utilisez la syntaxe suivante, par exemple :
if(account.getCustomAttributes() != null) {account.getCustomAttributes()['CUSTOM_ATTRIBUTE_NAME'] }
Par exemple, pour un attribut personnalisé appelé Marqueurs :
if(account.getCustomAttributes() != null) {account.getCustomAttributes()['Tags'] }
Utilitaires de transformation pour la transformation des données sortantes
Un certain nombre d'utilitaires sont disponibles pour vous aider dans les tâches de transformation telles que la vérification de l'existence d'un compte, l'obtention d'un utilisateur, l'utilisation de consultations, etc.
| Cas d'utilisation | Méthode utilitaire |
|---|---|
|
Extraire un attribut personnalisé pour un utilisateur. |
|
|
Obtenir un code de consultation cible et décoder la valeur. |
|
|
Obtenir un code de consultation global et décoder la valeur. |
|
|
Obtenir la valeur d'un attribut à partir d'un objet géré filtré sur une autre valeur d'attribut. Dans cet utilitaire, vous pouvez obtenir la valeur d'un attribut souhaité en fournissant le nom et la valeur Oracle Access Governance d'un attribut à mettre en correspondance, ainsi que le nom Oracle Access Governance de l'attribut pour lequel vous souhaitez retourner une valeur. S'il y a plus d'un objet correspondant ou s'il n'y a aucune correspondance, vous obtiendrez une valeur nulle. |
Par exemple : Dans l'exemple suivant, en indiquant fullName comme nom d'attribut correspondant et Alice Smith comme valeur, vous pouvez obtenir la valeur de organizationName à partir de l'objet géré mis en correspondance.
|
|
Vérifiez si un compte existe pour un nom d'attribut et une valeur donnés. |
Par exemple : Vérifiez s'il existe un compte dont le nom est fullName, la valeur de l'attribut est Alice Smith et l'opérateur de correspondance est eq.
|
|
Obtenir un utilisateur à partir de l'ID identité globale. Cela renvoie l'objet utilisateur à partir duquel vous pouvez obtenir d'autres attributs. |
Par exemple :
|
|
Vérifiez si un utilisateur a des subordonnés immédiats. Retourne Vrai si l'utilisateur a un ou plusieurs subordonnés, sinon retourne Faux. |
|
Exemples de transformation de données sortantes
Voici quelques exemples de règles de mappage et de cas d'utilisation lors de l'application de transformations de données sortantes dans Oracle Access Governance.
| Cas d'utilisation | Exemple de règle |
|---|---|
|
Valeur de chaîne fixe |
'SampleValue'
|
|
Attribut d'utilisateur |
user.getName().getGivenName()
Note
Vous devez effectuer une vérification nulle avant d'utiliser des opérations telles que la valeur peut être nulle. |
| Attribut de type date |
new Number(new Date().getTime());
Par exemple, pour régler la date au 31 janvier 2024 :
|
|
Attribut d'application |
application.getDisplayName()
Note
Vous devez effectuer une vérification nulle avant d'utiliser des opérations telles que la valeur peut être nulle. |
|
Attribut de la demande |
requestAttributes.get('organizationName').get(0)
Note
|
| Régler la valeur à la combinaison de 2 attributs d'utilisateur |
ou :
|
| Régler la valeur à un autre attribut si la valeur d'entrée est nulle (si l'organisation est nulle, alors régler à une valeur fixe) |
user.getOrganization() != null && user.getOrganization().getDisplayName() != null ? user.getOrganization().getDisplayName() : 'DefaultOrganization'
|
Exemples de transformation de données entrantes et d'attributs d'identité
Voici quelques exemples de règles de mappage et d'utilisation de cas lors de l'application de transformations de données entrantes ou de transformations au profil d'identité composite dans Oracle Access Governance.
Il est recommandé de toujours exécuter une règle d'archivage NULL pour les valeurs extraites avant de les utiliser. Sinon, cela peut entraîner des échecs de cycle d'ingestion pour les références NULL. Cela doit être fait à la fois pour l'objet d'attributs d'utilisateur dans les sources faisant autorité et pour l'objet d'attributs de compte dans les systèmes gérés pour les transformations entrantes.
Exemples de règles de mappage pour les sources faisant autorité
Voici quelques expressions de règle de mappage avec une valeur d'entrée ou une valeur de sortie pour les attributs d'objet d'identité (utilisateur).
|
Attribut cible |
Type d'attribut |
Type de données d'attribut cible |
Objectif de la règle de mappage |
Expression de règle de mappage |
Entrée de valeur |
Sortie de valeur |
|---|---|---|---|---|---|---|
|
userName |
VALEURS PAR DÉFAUT |
Chaîne |
Concaténer userName et displayName et définir cette valeur dans l'attribut userName |
user.getUserName().concat('-',user.getDisplayName())
|
userName=mark.hill displayName=Mark Hill |
mark.hill-Mark Hill |
|
userName |
VALEURS PAR DÉFAUT |
Chaîne |
Si userName n'est pas nul, convertissez userName en upperCase et définissez-le dans l'attribut userName |
if(user.getUserName()!=null) {user.getUserName().toUpperCase() }
|
userName=mark.hill |
MARK.HILL |
|
jobDescription |
PERSONNALISÉ |
Chaîne |
LowerCase la valeur de la description et la définir dans l'attribut personnalisé, jobDescription |
user.getDescription().toLowerCase()
|
description = SoftwareDeveloper1 |
jobDescription = softwaredeveloper1 |
|
statut |
VALEURS PAR DÉFAUT |
Boolean |
Si le statut est nul, réglez-le à Vrai, sinon remplacez la valeur. |
user.getStatus()==null ? true : !user.getStatus()
|
statut = Vrai | fausse |
|
risque |
VALEURS PAR DÉFAUT |
Entier |
Si le risque est nul, jeu 20, sinon augmenter le risque de 15 |
user.getRisk() == null ? 20 : user.getRisk() + 15
|
risque = 30 risque = nul |
45 20 |
|
description |
VALEURS PAR DÉFAUT |
Chaîne |
Obtenez startDate de type long, convertissez-le en date, puis réglez-le en chaîne à l'attribut de description. |
new Date(user.getStartDate()).toISOString()
|
startDate = 17034426000000 |
2023-12-25T07 :55 :46.061Z |
|
provisionedOnDate |
VALEURS PAR DÉFAUT |
Date |
Obtenez validFromDate (long), convertissez en date, puis réglez provisionedOnDate à arrondi au 1er du mois suivant. |
const currentDate = new Date(user.getValidFromDate()); new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 1).getTime();
|
validFromDate = 170344260000000 |
provisionedOnDate = 1704047400000 |
|
provisionedFromDate |
VALEURS PAR DÉFAUT |
Date |
Chaîne de type d'entrée. Date du type de sortie. |
new Date(user.getValidFromDate()).toISOString() |
validFromDate = 170344260000000 entrée = 2023-12-24T18 :30 :00.000Z |
provisionedFromDate = 1703422800000 |
Exemples de règles de mappage pour les systèmes gérés
Voici quelques expressions de règle de mappage avec une valeur d'entrée ou une valeur de sortie pour les attributs d'objet de compte.
|
Attribut cible |
Type d'attribut |
Type de données d'attribut cible |
Objectif de la règle de mappage |
Expression de règle de mappage |
Entrée de valeur |
Sortie de valeur |
|---|---|---|---|---|---|---|
|
displayName |
VALEURS PAR DÉFAUT |
Chaîne |
Si displayName n'est pas nul, réglez la valeur en majuscules à displayName. |
if(account.getDisplayName()!=null) {account.getDisplayName().toUpperCase() }
|
displayName = Mark Hill |
MARK HILL |
|
primaryEmail |
VALEURS PAR DÉFAUT |
Chaîne |
Concaténer userLogin et "@myexample.com" et définir dans primaryEmail. |
account.getUserLogin().concat('@myexample.com')
|
userLogin = mark.hill | mark.hill@myexample.com |
|
jobDescription |
PERSONNALISÉ |
Chaîne |
LowerCase la valeur de la description et la définir dans les attributs personnalisés jobDescription. |
if(account.getDescription()!=null) { account.getDescription().toLowerCase() }
|
description = SoftwareDeveloper1 | jobDescription = softwaredeveloper1 |
|
statut |
VALEURS PAR DÉFAUT |
Boolean |
Exemple 1 : Si le statut est nul, réglez-le à Vrai sinon remplacez la valeur. |
account.getStatus()==null ? true : !account.getStatus()
|
statut = Vrai |
fausse |
|
Exemple 2 : Réglez le statut à Faux. |
false
|
statut = null/true/false | fausse | |||
|
risque |
VALEURS PAR DÉFAUT |
Entier |
Si le risque est nul, alors réglez à 20, sinon augmentez le risque de 15. |
account.getRisk() == null ? 20 : account.getRisk() + 15
|
risque = 30 risque = nul |
45 20 |
|
riskSummary |
VALEURS PAR DÉFAUT |
Long |
Si riskSummary est nul et réglé à 1234, sinon le risque est augmenté de 70. |
account.getRiskSummary() == null ? 1234 : account.getRiskSummary() + 70
|
riskSummary = 30 riskSummary = nul |
100 1 234 |