Attribuer automatiquement des droits avec les groupes de permission
- Nicht definierter Typ
Ce document explique la convention de nommage des groupes de permission et la manière dont ces groupes reçoivent automatiquement des droits sur les objets sécurisés.
1. Principe
Pour chaque permission d’un type d’objet sécurisé, RestFrontage peut rechercher un groupe portant un nom conventionnel. Si ce groupe existe dans l’organisation de l’objet, un droit lui est attribué lors de la création de l’objet.
La formule de nommage est :
<Permission.Name><NomTechniqueDuType>
Les deux valeurs sont concaténées telles quelles. Aucun espace, tiret ou autre séparateur n’est ajouté par le serveur.
| Nom de la permission | Type technique | Groupe recherché |
|---|---|---|
Read |
Map |
ReadMap |
See |
Workspace |
SeeWorkspace |
Read |
Equipment |
ReadEquipment |
Folder Read |
Folder |
Folder ReadFolder |
Folder FullControl |
Folder |
Folder FullControlFolder |
Le serveur utilise la propriété technique Permission.Name, et non le libellé traduit affiché à l’utilisateur, l’identifiant numérique de la permission ou son Flag.
Pour plus d'informations sur les permissions et leur fonctionnement consultez le document Permissions et droits des objets sécurisés
2. Emplacement attendu du groupe
Le groupe doit se trouver directement dans l’unité organizationnelle Groups du sous-domaine de sécurité associé à l’organisation de l’objet.
Son DistinguishedName est construit ainsi :
RN=<Permission.Name><NomTechniqueDuType>, OU=Groups, <DistinguishedNameDuSousDomaine>
Pour une carte de l’organisation Paris, dont le sous-domaine vaut OU=Paris, DC=Immersive, le groupe de lecture attendu est par exemple :
RN=ReadMap, OU=Groups, OU=Paris, DC=Immersive

Un groupe du même nom placé dans une autre organisation ou dans une autre unité n’est pas le groupe recherché pour cet objet.
3. Ce qui est réellement attribué
Le groupe n’est pas ajouté comme membre de l’objet métier. RestFrontage crée ou complète un Right, c’est-à-dire une ligne de droit reliant trois éléments :
Élément du Right |
Valeur |
|---|---|
| Bénéficiaire | Identifiant du groupe de permission. |
| Objet sécurisé | Identifiant de l’objet créé. |
| Type sécurisé | Identifiant du type de l’objet. |
| Autorisation | Flag de la permission ajouté à AuthorizedFlags. |
| Refus | Aucun refus ajouté par cette convention. |
Si un droit existe déjà pour ce groupe et cet objet, le Flag de la permission est fusionné avec les autorisations existantes. Les autres autorisations portées par le même droit sont conservées.
Cette convention produit uniquement des autorisations. Pour produire automatiquement un refus, il faut configurer une règle de droit automatique avec l’effet Refuser.
4. Application lors de la création
Lorsqu’un objet est créé par un parcours branché au mécanisme de sécurité, RestFrontage effectue les opérations suivantes :
- enregistrer l’objet métier ;
- déterminer son type sécurisé et son nom technique ;
- retrouver l’organisation et son sous-domaine de sécurité ;
- charger toutes les permissions du type ;
- construire le nom de groupe attendu pour chaque permission ;
- ignorer les groupes qui n’existent pas ;
- créer ou compléter les droits des groupes trouvés ;
- enregistrer les modifications de sécurité et actualiser le domaine et les caches concernés.
Toutes les permissions valides du type sont examinées. Si plusieurs groupes conventionnels existent, chacun reçoit le droit correspondant sur le nouvel objet.
Le même calcul applique également les règles configurées dans Droits automatiques. Les droits produits par les règles et ceux produits par les groupes conventionnels sont fusionnés par bénéficiaire.
4.1 Création par les contrôleurs OData sécurisés
La façade OData d'un objet sécurisé déclenche le calcul après l’enregistrement du nouvel objet.
Ce mécanisme est notamment utilisé par les parcours sécurisés des cartes, équipements, workspaces, dossiers et scopes de supervision qui sont des objets sécurisés de base.
4.2 Création d’un dossier dans l’Explorer
La création de dossier depuis l’Explorer appelle explicitement le même calcul. Le dossier doit être associé à une organisation correspondant à un sous-domaine de sécurité actif.
5. Conditions nécessaires
Le droit conventionnel est produit seulement si toutes les conditions suivantes sont réunies :
- le type de l’objet est reconnu comme type sécurisé par le parcours utilisé ;
- au moins une permission existe pour ce type dans le
Domainchargé ; - la permission possède un nom non vide et un
Flagdifférent de0; - l’organisation de l’objet permet de retrouver un sous-domaine de sécurité ;
- le groupe existe dans
OU=Groupsde ce sous-domaine avec le nom attendu ; - le parcours de création appelle le resolver de droits automatiques.
La seule présence du groupe ne lance pas un traitement global de tous les objets du type. Le mécanisme s’exécute à l’occasion d’une création branchée ou d’une régularisation demandée depuis les outils de sécurité.
6. Objets déjà existants
La création d’un groupe de permission n’est pas rétroactive. Les objets qui existaient avant le groupe ne reçoivent pas automatiquement son droit.
Pour traiter l’existant :
- ouvrir Sécurité, puis Outils de sécurité ;
- ouvrir Droits automatiques des objets existants ;
- sélectionner le type d’objet et, si nécessaire, l’organisation ;
- lancer l’audit ;
- contrôler les objets marqués Incomplet ;
- utiliser Régulariser ou Régulariser la sélection.
L’audit utilise le même nom technique de type, les mêmes permissions, les mêmes groupes conventionnels et les mêmes règles de droits automatiques que le parcours de création.
La régularisation ajoute ou complète les droits attendus. Elle ne supprime pas les droits supplémentaires déjà présents.
7. Exemple avec une carte
Configuration :
| Information | Valeur |
|---|---|
| Type sécurisé | Map, identifiant 15 |
| Nom de permission | Read |
| Flag | 1 |
| Organisation | Paris |
| Groupe | RN=ReadMap, OU=Groups, OU=Paris, DC=Immersive |
Lorsqu’une nouvelle carte de l’organisation Paris est créée par le contrôleur sécurisé :
- RestFrontage construit le nom
ReadMap; - il retrouve ce groupe dans le sous-domaine Paris ;
- il crée un
Rightentre le groupe et la nouvelle carte ; - il ajoute le masque
1dansAuthorizedFlags.
Un utilisateur membre de ReadMap, directement ou par l’intermédiaire d’un autre groupe, peut alors bénéficier de cette autorisation sur la carte.
8. Exemple avec un dossier
Les noms de permission historiques des dossiers contiennent déjà le mot Folder. Le nom technique du type est néanmoins ajouté une seconde fois par la convention.
| Permission.Name | Type technique | Groupe attendu |
|---|---|---|
Folder See |
Folder |
Folder SeeFolder |
Folder Read |
Folder |
Folder ReadFolder |
Folder Modify |
Folder |
Folder ModifyFolder |
Folder Write |
Folder |
Folder WriteFolder |
Folder FullControl |
Folder |
Folder FullControlFolder |
Ces noms peuvent sembler redondants, mais ils correspondent exactement au calcul actuel. Créer par exemple un groupe ReadFolder ne remplace pas Folder ReadFolder.
9. Renommer une permission
Le nom du groupe est recalculé à partir de la valeur courante de Permission.Name. Renommer une permission modifie donc immédiatement le groupe recherché pour les prochaines créations et pour les prochains audits.
Le renommage ne supprime pas automatiquement les droits déjà enregistrés avec l’ancien groupe. Avant de renommer une permission :
- déterminer le nouveau nom conventionnel ;
- créer ou renommer les groupes nécessaires dans chaque organisation ;
- contrôler leurs membres ;
- lancer l’audit des objets existants ;
- vérifier séparément les anciens droits devenus inutiles avant toute suppression.
10. Ce que le mécanisme ne fait pas
La convention de groupe ne réalise pas automatiquement les opérations suivantes :
- créer le groupe manquant ;
- ajouter des utilisateurs au groupe ;
- traiter immédiatement tous les objets existants lors de la création du groupe ;
- protéger un objet créé par un parcours qui ne déclenche pas les droits automatiques ;
- créer un refus d’accès ;
- retirer les anciens droits lorsqu’un groupe ou une permission est renommé ou supprimé.
11. Résolution des problèmes
| Symptôme | Vérifications |
|---|---|
| Le groupe existe mais aucun droit n’est créé | Vérifier son nom exact, son emplacement dans OU=Groups, l’organisation de l’objet, le nom technique du type et le parcours de création. |
Le groupe ReadMap fonctionne dans une organisation mais pas une autre |
Chaque sous-domaine doit posséder son propre groupe sous son unité Groups. |
| Les nouveaux objets sont corrects mais pas les anciens | Lancer l’audit puis la régularisation des droits automatiques. |
| Le droit existe mais l’utilisateur reste refusé | Vérifier l’appartenance au groupe, les groupes imbriqués, les éventuels DeniedFlags et la permission réellement testée par le parcours. |
| Le fonctionnement change après le renommage d’une permission | Recalculer le nom avec la nouvelle valeur de Permission.Name, puis régulariser l’existant. |
| Un groupe de dossier au nom simplifié n’est pas reconnu | Utiliser le nom complet, par exemple Folder ReadFolder. |
12. Checklist de mise en service
- Le type technique de l’objet est identifié.
- La valeur exacte de
Permission.Nameest connue. - Le nom du groupe est la concaténation exacte des deux valeurs.
- Le groupe se trouve sous
OU=Groupsdans chaque organisation concernée. - Les utilisateurs ou groupes métiers sont membres du groupe de permission.
- Un nouvel objet de test reçoit le droit attendu.
- Les objets existants ont été audités et régularisés.
- Les refus éventuels ont été contrôlés séparément.
- Toute création réalisée hors du pipeline standard applique explicitement les droits automatiques.