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 les attributs d'identité et de compte. Ces règles sont écrites en JavaScript.
Objets
|
Nom de l'objet |
Objet |
Exemple |
|---|---|---|
|
requestAttributes |
Objet d'attribut de demande de provisionnement. Ces attributs sont disponibles lorsque le provisionnement s'effectue via des méthodes directes ou basées sur une stratégie, une demande de groupe d'accès ou un rôle. |
|
|
utilisateur |
Objet utilisateur. Utilisez la méthode get requise pour accéder à n'importe quel membre. |
|
|
application |
Objet de ressource. Utilisez la méthode get requise pour accéder à n'importe quel membre. |
|
|
Nom de l'objet |
Objet |
Exemple |
|---|---|---|
|
utilisateur |
Objet utilisateur. Utilisez la méthode get requise pour accéder à n'importe quel membre de la source d'identité. |
user.getName().getGivenName(), user.getUserName()
|
|
compte |
Objet de compte. Utilisez la méthode get requise 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 autorisées ou de systèmes gérés. Toutefois, vous ne pouvez transformer que les attributs d'identité (utilisateur) pour les données sortantes.
- Effectuez toujours une vérification NULL des valeurs extraites avant de les utiliser, sinon cela peut entraîner des échecs de cycle d'inclusion sur les références NULL. Cela doit être fait à la fois pour l'objet d'attributs user dans les sources faisant autorité et pour l'objet d'attributs account dans les systèmes gérés pour les transformations entrantes.
- Vous ne pouvez pas directement transformer ou affecter de valeur à des attributs ayant un type de données d'objet de tableau, c'est-à-dire des attributs renvoyant une liste de valeurs, telles 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 pour le lieu d'attribut si un lieu est NULL, 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 aux données disponibles ou provisionnées dans le système orchestré. Voici la liste des attributs d'identité (utilisateur) disponibles pour les transformations de données sortantes.
Syntaxe d'extraction des attributs d'identité pour les données sortantes
Ces détails peuvent être extraits à l'aide de la syntaxe suivante :
get<FieldName>()
Extraire le nom donné de l'utilisateur
user.getName().getGivenName()
| Attribut | Sous-attribut | Type de données | Syntaxe |
|---|---|---|---|
|
nom |
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()
|
|
|
organisation |
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()
|
|
|
responsable |
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()
|
|
|
département |
Chaîne |
user.getState()
|
|
|
risque |
Chaîne |
user.getRisk()
|
|
|
lieu |
Chaîne |
user.getLocation()
|
|
|
courriels |
Liste d'adresses électroniques |
|
|
|
pendingVerificationData |
Chaîne |
email.getPendingVerificationData()
|
|
|
principal |
Booléen |
email.getPrimary()
|
|
|
secondaire |
Booléen |
email.getSecondary()
|
|
|
type |
Chaîne |
email.getType()
|
|
|
valeur |
Chaîne |
email.getValue()
|
|
|
vérifié |
Booléen |
email.getVerified()
|
|
|
adresses |
Liste d'adresses |
|
|
|
pays |
Chaîne |
address.getCountry()
|
|
|
formaté |
Chaîne |
address.getFormatted()
|
|
|
localité |
Chaîne |
address.getLocality()
|
|
|
postalCode |
Chaîne |
address.getPostalCode()
|
|
|
principal |
Booléen |
address.isPrimary()
|
|
|
région |
Chaîne |
address.getRegion()
|
|
|
streetAddress |
Chaîne |
address.getStreetAddress()
|
|
|
type |
Chaîne |
address.getType()
|
|
|
phoneNumbers |
Liste de PhoneNumber |
|
|
|
affichage |
Chaîne |
phoneNumber.getDisplay()
|
|
|
principal |
Booléen |
phoneNumber.isPrimary()
|
|
|
type |
Chaîne |
phoneNumber.getType()
|
|
|
valeur |
Chaîne |
phoneNumber.getValue()
|
|
|
Booléen |
phoneNumber.isVerified()
|
Attributs d'objet d'identité source faisant autorité pour la transformation entrante et la personnalisation des attributs d'identité
Vous pouvez modifier ou modifier les données entrantes en appliquant des règles de transformation de données lors de la phase d'assimilation dans le système orchestré. Vous pouvez utiliser le même ensemble d'attributs pour personnaliser le profil d'identité composite construit dans Oracle Access Governance en transformant les attributs d'identité.
Syntaxe d'extraction des attributs d'identité pour les données entrantes
Les détails de l'attribut peuvent être extraits à l'aide de la syntaxe suivante :
get<FieldName>()
Extraire le nom donné 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()
|
|
|
organisation |
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()
|
|
|
responsable |
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()
|
|
|
département |
Chaîne |
user.getState()
|
|
|
risque |
Chaîne |
user.getRisk()
|
|
|
lieu |
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 d'adresses électroniques |
emails = user.getEmails()
|
|
|
pendingVerificationData |
Chaîne |
user.getEmails()[0].getPendingVerificationData()
|
|
|
principal |
Booléen |
user.getEmails()[0].getPrimary()
|
|
|
secondaire |
Booléen |
user.getEmails()[0].getSecondary()
|
|
|
type |
Chaîne |
user.getEmails()[0].getType()
|
|
|
valeur |
Chaîne |
user.getEmails()[0].getValue()
|
|
|
vérifié |
Booléen |
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()
|
|
|
postalCode |
Chaîne |
user.getAddresses()[0].getPostalCode()
|
|
|
principal |
Booléen |
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 |
|
|
|
affichage |
Chaîne |
user.getPhoneNumbers()[0].getDisplay()
|
|
|
principal |
Booléen |
user.getPhoneNumbers()[0].isPrimary()
|
|
|
type |
Chaîne |
user.getPhoneNumbers()[0].getType()
|
|
|
valeur |
Chaîne |
user.getPhoneNumbers()[0].getValue()
|
|
|
Booléen |
user.getPhoneNumbers()[0].isVerified()
|
||
|
photos |
Liste de photos |
|
|
|
affichage |
Chaîne |
user.getPhotos()[0].getDisplay()
|
|
|
principal |
Booléen |
user.getPhotos()[0].isPrimary()
|
|
|
type |
Chaîne |
user.getPhotos()[0].getType()
|
|
|
valeur |
Chaîne |
user.getPhotos()[0].getValue()
|
|
|
ims |
Liste des ims |
|
|
|
affichage |
Chaîne |
user.getIms()[0].getDisplay()
|
|
|
principal |
Booléen |
user.getIms()[0].isPrimary()
|
|
|
type |
Chaîne |
user.getIms()[0].getType()
|
|
|
valeur |
Chaîne |
user.getIms()[0].getValue()
|
Attributs d'objet de compte des 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 au cours de la phase d'assimilation des données dans le système orchestré.
Syntaxe d'extraction des attributs de compte pour la transformation des données entrantes
Les détails de l'attribut peuvent être extraits à l'aide de la syntaxe suivante :
get<FieldName>()
Extraire le nom donné 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()
|
|
|
nom |
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 d'adresses électroniques |
emails = account.getEmails()
|
|
|
pendingVerificationData |
Chaîne |
account.getEmails()[0].getPendingVerificationData()
|
|
|
principal |
Booléen |
account.getEmails()[0].getPrimary()
|
|
|
secondaire |
Booléen |
account.getEmails()[0].getSecondary()
|
|
|
type |
Chaîne |
account.getEmails()[0].getType()
|
|
|
valeur |
Chaîne |
account.getEmails()[0].getValue()
|
|
|
vérifié |
Booléen |
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()
|
|
|
postalCode |
Chaîne |
account.getAddresses()[0].getPostalCode()
|
|
|
principal |
Booléen |
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()
|
|
|
affichage |
Chaîne |
account.getPhoneNumbers()[0].getDisplay()
|
|
|
principal |
Booléen |
account.getPhoneNumbers()[0].isPrimary()
|
|
|
type |
Chaîne |
account.getPhoneNumbers()[0].getType()
|
|
|
valeur |
Chaîne |
account.getPhoneNumbers()[0].getValue()
|
|
|
Booléen |
account.getPhoneNumbers()[0].isVerified()
|
||
|
photos |
Liste de photos |
photos = account.getPhotos()
|
|
|
affichage |
Chaîne |
account.getPhotos()[0].getDisplay()
|
|
|
principal |
Booléen |
account.getPhotos()[0].isPrimary()
|
|
|
type |
Chaîne |
account.getPhotos()[0].getType()
|
|
|
valeur |
Chaîne |
account.getPhotos()[0].getValue()
|
|
|
ims |
Liste des ims |
ims = account.getIms()
|
|
|
affichage |
Chaîne |
account.getIms()[0].getDisplay()
|
|
|
principal |
Booléen |
account.getIms()[0].isPrimary()
|
|
|
type |
Chaîne |
account.getIms()[0].getType()
|
|
|
valeur |
Chaîne |
account.getIms()[0].getValue()
|
Règle à attributs multiples dans la transformation entrante
A l'aide des 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 définit les attributs description et Building sur la valeur tempName. Vous devez supprimer les règles à attribut unique précédentes définies 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);
A 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 Cette règle définit-elle plusieurs attributs ? et sélectionnez les attributs appropriés.
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 utilisateur personnalisés.
Attribut personnalisé utilisateur
Oracle Access Governance fournit une méthode utilitaire permettant d'extraire l'attribut personnalisé d'un utilisateur pour les transformations entrantes ou sortantes. Pour extraire le fichier 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é Balises :
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 utilitaire permettant d'extraire l'attribut personnalisé d'un compte pour les transformations entrantes uniquement. 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é Balises :
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 recherches, etc.
| Cas d'utilisation | Méthode utilitaire |
|---|---|
|
Extraire un attribut personnalisé pour un utilisateur. |
|
|
Obtenir un code express cible et décoder la valeur. |
|
|
Obtenir un code express 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 indiquant 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 voulez renvoyer une valeur. S'il existe plusieurs objets correspondants ou qu'il n'y a aucune correspondance, vous obtiendrez la valeur NULL. |
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 et une valeur d'attribut donnés. |
Par exemple : vérifiez s'il existe un compte dont le nom d'attribut est fullName, si la valeur d'attribut est Alice Smith et si l'opérateur de correspondance est eq.
|
|
Obtenir un utilisateur à partir de l'ID d'identité global. Cette action renvoie l'objet utilisateur à partir duquel vous pouvez obtenir d'autres attributs. |
Par exemple :
|
|
Vérifiez si un utilisateur a des subordonnés directs. Renvoie true si l'utilisateur a un ou plusieurs subordonnés, sinon renvoie false. |
|
Exemples de transformation de données sortantes
Voici quelques exemples de règles de mise en correspondance et de cas d'utilisation lors de l'application de transformations de données sortantes dans Oracle Access Governance.
| Cas d'utilisation | Règle d'échantillon |
|---|---|
|
Valeur de chaîne fixe |
'SampleValue'
|
|
Attribut utilisateur |
user.getName().getGivenName()
Remarque
Vous devez effectuer une vérification NULL avant d'utiliser des opérations telles que la valeur peut être NULL. |
| Attribut de type date |
new Number(new Date().getTime());
Par exemple, pour définir la date au 31 janvier 2024 :
|
|
Attribut d'application |
application.getDisplayName()
Remarque
Vous devez effectuer une vérification NULL avant d'utiliser des opérations telles que la valeur peut être NULL. |
|
Attribut de demande |
requestAttributes.get('organizationName').get(0)
Remarque
|
| Définir la valeur sur la combinaison de 2 attributs utilisateur |
ou :
|
| Définir la valeur sur un autre attribut si la valeur d'entrée est NULL (si l'organisation est NULL, définir 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 mise en correspondance et de cas d'utilisation lors de l'application de transformations de données entrantes ou de transformations sur le profil d'identité composite dans Oracle Access Governance.
Il est recommandé de toujours effectuer une vérification NULL des valeurs extraites avant de les utiliser. Sinon, cela peut entraîner des échecs de cycle d'inclusion sur les références NULL. Cela doit être fait à la fois pour l'objet d'attributs user dans les sources faisant autorité et pour l'objet d'attributs account dans les systèmes gérés pour les transformations entrantes.
Exemples de règles de mapping pour les sources faisant autorité
Voici quelques expressions de règle de mise en correspondance avec une valeur d'entrée ou de sortie pour les attributs d'objet d'identité (utilisateur).
|
Attribut cible |
Type d'attribut |
Type d'attribut de données cible |
But de la règle de mise en correspondance |
Expression de règle de mapping |
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 NULL, 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 |
Booléen |
Si le statut est NULL, définissez-le sur vrai, sinon remplacez la valeur. |
user.getStatus()==null ? true : !user.getStatus()
|
status = vrai | faux |
|
risque |
VALEURS PAR DÉFAUT |
Entier |
Si le risque est nul 20, sinon augmenter le risque de 15 |
user.getRisk() == null ? 20 : user.getRisk() + 15
|
risque = 30 risque = NULL |
45 20 |
|
description |
VALEURS PAR DÉFAUT |
Chaîne |
Obtenez startDate de type long, convertissez-le en date, puis définissez-le en tant que chaîne sur l'attribut de description. |
new Date(user.getStartDate()).toISOString()
|
startDate = 1703442600000 |
2023-12-25T07 :55 :46.061Z |
|
provisionedOnDate |
VALEURS PAR DÉFAUT |
Date |
Obtenez validFromDate (long), convertissez à ce jour, puis définissez provisionedOnDate arrondi au 1er du mois prochain. |
const currentDate = new Date(user.getValidFromDate()); new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 1).getTime();
|
validFromDate = 1703442600000 |
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 = 1703442600000 input = 2023-12-24T18 :30 :00.000Z |
provisionedFromDate = 1703422800000 |
Exemples de règles de mise en correspondance pour les systèmes gérés
Voici quelques expressions de règle de mise en correspondance avec une valeur d'entrée ou de sortie pour les attributs d'objet de compte.
|
Attribut cible |
Type d'attribut |
Type d'attribut de données cible |
But de la règle de mise en correspondance |
Expression de règle de mapping |
Entrée de valeur |
Sortie de valeur |
|---|---|---|---|---|---|---|
|
displayName |
VALEURS PAR DÉFAUT |
Chaîne |
Si displayName n'est pas NULL, définissez la valeur en majuscules sur 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 définissez-la dans les attributs personnalisés jobDescription. |
if(account.getDescription()!=null) { account.getDescription().toLowerCase() }
|
description = SoftwareDeveloper1 | jobDescription = softwaredeveloper1 |
|
statut |
VALEURS PAR DÉFAUT |
Booléen |
Exemple 1 : si le statut est NULL, définissez-le sur True sinon remplacez la valeur. |
account.getStatus()==null ? true : !account.getStatus()
|
status = vrai |
faux |
|
Exemple 2 : définissez le statut sur False. |
false
|
statut = NULL/Vrai/Faux | faux | |||
|
risque |
VALEURS PAR DÉFAUT |
Entier |
Si le risque est nul, définissez-le sur 20, sinon augmentez le risque de 15. |
account.getRisk() == null ? 20 : account.getRisk() + 15
|
risque = 30 risque = NULL |
45 20 |
|
riskSummary |
VALEURS PAR DÉFAUT |
Long |
Si riskSummary a la valeur NULL et est défini sur 1234, sinon le risque augmente de 70. |
account.getRiskSummary() == null ? 1234 : account.getRiskSummary() + 70
|
riskSummary = 30 riskSummary = NULL |
100 1 234 |