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

Les valeurs d'attribut d'une transformation de données sortante peuvent être dérivées des objets suivants :
Objets (sortants)

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.

requestAttributes.get('name')

utilisateur

Objet utilisateur. Utilisez l'accesseur requis pour accéder à n'importe quel membre.

user.getName().getGivenName(), user.getUserName()

application

Objet de ressource. Utilisez l'accesseur requis pour accéder à n'importe quel membre.

application.getDisplayName()

La valeur d'attribut d'une transformation de données entrante peut être dérivée des objets suivants :
Objets (entrants)

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()
Attributs d'objet d'identité (utilisateur) pour les données sortantes
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

emails = user.getEmails()
email = user.getEmails() != null ? 
user.getEmails().get(0) : null

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

addresses = user.getAddresses();
address = user.getAddresses() != null? 
user.getAddresses().get(0) : null

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

phoneNumbers = user.getPhoneNumbers();
phoneNumber = user.getPhoneNumbers() != null? 
user.getPhoneNumbers().get(0) : null;

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()
Attributs d'identité source faisant autorité pour les données entrantes
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

addresses = user.getAddresses();

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

phoneNumbers = user.getPhoneNumbers();

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

photos = user.getPhotos();

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

ims = user.getIms();

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()
Attributs de compte de systèmes gérés pour la transformation de données entrantes
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.

Utilitaires de transformation
Cas d'utilisation Méthode utilitaire

Extraire un attribut personnalisé pour un utilisateur.

transformationUtil.getUserIdentityCustomAttributeValue(agcs_tenant_id, user.getId(), 'CUSTOM_ATTRIBUTE_NAME')

Obtenir un code de consultation cible et décoder la valeur.

transformationUtil.getLookupCode(agcs_tenant_id, agcs_target_id, 'countries', user.getAddresses().get(0).getCountry())

transformationUtil.getLookupDecode(agcs_tenant_id, agcs_target_id, 'countries', user.getAddresses().get(0).getCountry())

Obtenir un code de consultation global et décoder la valeur.

transformationUtil.getGlobalLookupCode(agcs_tenant_id, 'countries', user.getAddresses().get(0).getCountry())

transformationUtil.getGlobalLookupDecode(agcs_tenant_id, 'countries', user.getAddresses().get(0).getCountry())

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.

transformationUtil.getAttributeValueFromManagedObject(agcs_tenant_id, agcs_target_id, matchAttributeName, matchAttributeValue, returnAttributeName)

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.

transformationUtil.getAttributeValueFromManagedObject(agcs_tenant_id, agcs_target_id, 'fullName', 'Alice Smith', 'organizationName')

Vérifiez si un compte existe pour un nom d'attribut et une valeur donnés.

transformationUtil.isAccountExists(agcs_tenant_id, agcs_target_id, matchAttributeName, matchAttributeValue, operator)

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.

transformationUtil.isAccountExists(agcs_tenant_id, agcs_target_id, 'fullName', 'Alice Smith', 'eq')

Obtenir un utilisateur à partir de l'ID identité globale. Cela renvoie l'objet utilisateur à partir duquel vous pouvez obtenir d'autres attributs.

transformationUtil.getUser(agcs_tenant_id, 'global_identity_id')

Par exemple :

let user = transformationUtil.getUser(agcs_tenant_id, 'global_identity_id');
if(user != null ) {
  let username = user.getUserName();
}

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.

transformationUtil.hasDirectReportees(agcs_tenant_id,'global_identity_id')

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.

Exemples de règles de mappage
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 :

new Number(new Date(2024,00,31).getTime());

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

  • Vous devez effectuer une vérification nulle avant d'utiliser des opérations telles que la valeur peut être nulle.
  • 'requestAttributes.get(attrName)' retourne toujours un tableau. Nous devons donc effectuer un get(i) pour extraire la valeur spécifique
Régler la valeur à la combinaison de 2 attributs d'utilisateur
user.getName().getGivenName() + ' ' + user.getName().getFamilyName()
ou :
[ user.getName().getGivenName(),user.getName().getMiddleName() , user.getName().getFamilyName()].join(' ')
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.

Note

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.

Exemples de règles de mappage pour la gestion des autorisations

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