Vue d’ensemble
Un Team (Resource Group) peut porter desattributes : des listes de valeurs nommées, comme la marque ou le marché qu’il gère. Les rôles pointent alors vers un attribut au lieu de coder la valeur en dur : un seul rôle « Brand marketer » filtre chaque utilisateur sur les marques de ses propres Teams.
create pour POST, update pour PATCH. Consultez Authentification pour obtenir un access token.
Écrire des attributs
attributes est accepté par POST /v2/entities/resource-groups et PATCH /v2/entities/resource-groups/{id}.
Le provisionnement SCIM n’écrit ni n’efface jamais les attributs. Un Team synchronisé depuis votre fournisseur d’identité conserve les attributs définis via l’API.
Validation
La taille totale garde l’identité transmise entre les services Reelevant sous les limites des en-têtes HTTP. Une map invalide renvoie
400 avec l’error_code 5106 et la liste des erreurs :
Héritage
Un Team hérite des attributs de ses Teams parents. Les attributs effectifs d’un Team se résolvent ainsi :- Les clés du Team passent en premier, puis celles de ses parents, puis de ses grands-parents, en suivant
parentIds. - Le Team le plus proche l’emporte pour chaque clé. La liste d’une clé est remplacée, jamais fusionnée avec celle d’un ancêtre.
- Quand deux parents à la même distance définissent la même clé, le premier dans l’ordre de
parentIdsl’emporte. - La remontée s’arrête à un Team avec
excludeFromAncestorInheritance: true: ses propres attributs s’appliquent, pas ceux de ses ancêtres. C’est la même règle que pour la portée des Teams.
Valeur pour un utilisateur
Un utilisateur membre de plusieurs Teams obtient, pour chaque clé, l’union des valeurs effectives de tous ses Teams. Un utilisateur d’Aurora France et de Solstice abrand: [Aurora, Solstice], locale: [fr_FR] et channel: [email].
Les valeurs sont résolues à la vérification de l’access token : une modification d’attribut s’applique à la requête suivante de l’utilisateur.
Utiliser les attributs dans les conditions de rôle
Une règle de rôle référence un attribut avec{ "$resourceGroupAttribute": "<clé>" }. La référence est résolue avec les valeurs de l’utilisateur qui fait la requête. Créez ou modifiez le rôle avec POST /v2/entities/roles ou PATCH /v2/entities/roles/{id}.
Filtre de lignes Datasource (datasource_query)
Sur une règle query Datasource, le filtre de requête d’une condition datasource_query peut utiliser une référence au lieu d’une valeur statique :
Un utilisateur sans l’attribut obtient
$in: [] : aucune ligne ne correspond.
$in n’est accepté ici qu’avec une référence $resourceGroupAttribute, et uniquement dans les conditions de rôle. Pour une liste de valeurs statiques, utilisez $eq avec un string[] (voir Opérateurs).
Contrainte d’option d’Object (datagraph_option)
Sur une règle read DatagraphEntity, une condition datagraph_option limite les valeurs que l’utilisateur peut passer à une option d’Object lorsqu’il l’interroge.
La requête de l’utilisateur doit fixer l’option à l’une de ses valeurs. Un utilisateur sans l’attribut n’a aucune valeur autorisée. Quand plusieurs conditions s’appliquent au même Object, toutes doivent être respectées.
Les conditions de rôle s’appliquent aux requêtes des utilisateurs. Les exécutions de Workflow par le Runner ne sont pas filtrées.
Erreurs de validation
Les deux renvoient
400. L’index dans rules.0 désigne la règle rejetée.
Pages associées
- Filtres de requête Datasource — opérateurs acceptés dans les conditions
datasource_query. - Teams — hiérarchie des Teams et héritage des ancêtres.
- Rôles — règles de rôle et portées de Team.
- Authentification — obtenir un access token.