Expressions de valeur d'en-tête prises en charge pour les politiques d'authentification

Lorsque vous configurez des stratégies d'authentification d'application d'entreprise, vous pouvez ajouter des variables d'en-tête aux demandes transmises à l'application, en sélectionnant un attribut d'utilisateur dans une liste d'attributs utilisateur prédéfinis ou en entrant une expression.

Dans le champ Valeur d'en-tête pour les politiques d'authentification, vous pouvez fournir une chaîne littérale simple ou un identificateur d'attribut au lieu de sélectionner l'attribut utilisateur dans la liste. Si vous utilisez un identificateur d'attribut, la passerelle d'application tente de remplacer l'identificateur d'attribut par la valeur de l'attribut une fois l'authentification effectuée.

Les types d'identificateur d'attribut suivants sont pris en charge par les politiques d'authentification :

  • Application : Cet identificateur d'attribut accède aux informations de l'application d'entreprise enregistrée dans GIA.

    Format : $subject.client.<attr>

  • Utilisateur : Cet identificateur d'attribut accède aux informations de l'utilisateur connecté à GIA.

    Format : $subject.user.<attr>

  • Demande : Cet identificateur d'attribut accède aux informations de demande.

    Format : $request.<attr>

Pour la portée des attributs d'utilisateur, la passerelle d'application prend en charge tout attribut de niveau supérieur simple dans la réponse JSON à partir de /admin/v1/Users, comme les valeurs string, boolean ou int.

La passerelle d'application prend également en charge les attributs d'extension d'utilisateur en tant qu'expressions de valeur d'en-tête pour les politiques d'authentification, en utilisant le format suivant : $subject.user.urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:<attributeName> et les attributs personnalisés en utilisant le format suivant : $subject.user.urn:ietf:params:scim:schemas:idcs:extension:custom:User:<customAttributeName>

Exemple de noms de portée d'attribut d'utilisateur et de valeurs retournées

Nom d'attribut

Expression de valeur d'en-tête

Description

Nom complet

$subject.user.name

Nom complet de l'utilisateur.

Nom utilisateur

$subject.user.userName

Nom d'utilisateur de l'utilisateur.

Courriels

$subject.user.emails

D'autres types de courriel sont également pris en charge : $subject.user.emails.recovery, $subject.user.emails.other, $subject.user.emails.home et $subject.user.emails.work.

Adresse de courriel principale de l'utilisateur.

Numéros de téléphone

$subject.user.phoneNumbers

Autres types de numéros de téléphone pris en charge : $subject.user.phoneNumbers.mobile, $subject.user.phoneNumbers.home et $subject.user.phoneNumbers.work.

Numéro de téléphone de l'utilisateur.

Adresses

$subject.user.addresses

Adresse postale de l'utilisateur.

Groupes

$subject.user.groups

Liste des noms de groupe séparés par des virgules auxquels l'utilisateur est affecté au moyen d'une appartenance directe ou indirecte.

idcsCreatedBy

$subject.user.idcsCreatedBy

Nom d'affichage de l'utilisateur ou de l'application qui a créé cette ressource.

idcsLastModifiedBy

$subject.user.idcsLastModifiedBy

Nom d'affichage de l'utilisateur ou de l'application qui a modifié cette ressource.

Service

$subject.user.urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department

Service de l'utilisateur.

Numéro d'employé

$subject.user.urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber

Numéro d'employé de l'utilisateur.

Exemple de valeurs prises en charge pour la portée des attributs de demande :

Exemple de noms de portée d'attribut de demande et de valeurs prises en charge

Nom d'attribut

Expression de valeur d'en-tête

Description

policy_appname

$request.policy_appname

Retourne le nom de l'application d'entreprise enregistrée dans GIA.

policy_name

$request.policy_name

Retourne le nom de la politique spécifique mise en correspondance pour la demande.

policy_res

$request.policy_res

Retourne le modèle d'URL de ressource mis en correspondance pour la demande. Le format est : "<type> :<pattern>"

Exemple : text:/my/resource ou regex:/my/resource/.*

policy_action

$request.policy_action

Retourne la méthode HTTP (GET, POST, etc.) utilisée pour accéder à la ressource demandée.

res_host

$request.res_host

Retourne le nom d'hôte de la demande initiale.

res_port

$request.res_port

Retourne le numéro de port de la demande initiale.

res_type

$request.res_type

Retourne le protocole (HTTP ou HTTPS) de la demande initiale.

res_url

$request.res_url

Retourne l'URL demandée complète.