Policies
À quoi sert cet écran
Une policy est l’endroit où l’on choisit des permissions et, surtout, où on les limite. Une policy est composée de statements ; chaque statement liste des permissions et peut les restreindre à des clusters précis (ressources) et à des environnements (conditions).
C’est le seul endroit où le cantonnement existe. Une permission sélectionnée sans portée s’applique partout : tous les clusters, tous les environnements.
Avant de commencer
| Pour faire ceci | Il vous faut |
|---|---|
| Voir l’onglet | platform-settings.permission-policy.read |
| Créer une policy | platform-settings.permission-policy.create |
| Modifier une policy | platform-settings.permission-policy.update |
| Supprimer une policy | platform-settings.permission-policy.delete |
Enregistrez d’abord vos clusters et environnements, dans Infrastructure. Un statement ne peut pas être cantonné à quelque chose qui n’existe pas encore, et c’est la raison habituelle pour laquelle une policy du premier jour se retrouve sans portée.
Ouvrir l’écran
- Settings › People & Access
- Sélectionnez l’onglet Policies.
L’interface
📸 Capture d’écran : L’éditeur de policy avec un statement déplié. Repères : (1) l’arbre des permissions, (2) le sélecteur de clusters, (3) le sélecteur d’environnements, (4) la ligne de résumé du statement, (5) Save.
| # | Élément | Ce qu’il fait | Quand l’utiliser |
|---|---|---|---|
| 1 | Arbre des permissions | Sélectionne les permissions, groupées par plugin et par ressource | Toute policy |
| 2 | Sélecteur de clusters | Limite le statement à certains clusters | Toute policy touchant à l’infrastructure |
| 3 | Sélecteur d’environnements | Limite à dev, staging, production — un ou plusieurs |
Toute policy touchant aux déploiements |
| 4 | Résumé du statement | Récapitule ce que couvre le statement, par ex. « 2 cluster(s) » | Confirmer la portée avant d’enregistrer |
| 5 | Save | Écrit la policy | Pour terminer |
La ligne de résumé est votre vérification la plus rapide. Si elle ne mentionne ni cluster ni environnement, le statement n’a pas de portée.
Procédures
Créer une policy cantonnée
Nécessite platform-settings.permission-policy.create.
- Settings › People & Access › Policies, cliquez sur Add Policy.
- Nommez-la d’après ce qu’elle autorise, par ex.
Dev Deploy, pas d’après qui la reçoit. - Dans le statement, sélectionnez les permissions dans l’arbre.
- Sélectionnez les clusters concernés.
- Sélectionnez les environnements — un ou plusieurs.
- Lisez la ligne de résumé et confirmez qu’elle nomme bien les deux.
- Save.
Élargir ou restreindre une policy existante
Nécessite platform-settings.permission-policy.update.
- Ouvrez la policy, ajustez permissions ou portée, puis enregistrez.
- Le changement atteint tous les rôles portant cette policy, et donc tous les utilisateurs détenant ces rôles. Vérifiez quels rôles l’utilisent avant de modifier.
Supprimer une policy
Nécessite platform-settings.permission-policy.delete.
Les rôles qui la référencent perdent ce qu’elle accordait. Vérifiez d’abord ces rôles : un rôle qui se retrouve sans policy n’accorde plus rien et ne signale pas qu’il accordait quelque chose auparavant.
Scénario
Permettre à l’équipe d’astreinte de redémarrer des workloads de production sans lui donner les déploiements en production.
La distinction est fine, et c’est précisément le genre de cas pour lequel les policies existent.
- Créez une policy nommée
Prod Oncall. - Dans le statement, ne sélectionnez que les permissions opérationnelles nécessaires à l’astreinte. Ne sélectionnez pas les permissions de déploiement.
- Cantonnez les ressources au seul cluster de production.
- Fixez la condition d’environnement à
productionuniquement. - Vérifiez que le résumé nomme un cluster et un environnement.
- Enregistrez, puis rattachez la policy à un rôle
On-Call— seule, et non aux côtés d’une policy de déploiement plus large, sinon c’est la plus large qui l’emporte. - Vérifiez dans Access Explorer qu’une permission de déploiement en production reste refusée pour un utilisateur d’astreinte.
L’étape 7 compte, car les permissions sont cumulatives : un utilisateur détenant deux rôles obtient l’union des deux. Restreindre une policy ne sert à rien si une autre accorde la même chose.
En cas de problème
| Symptôme | Cause | Comment vérifier | Solution |
|---|---|---|---|
| La policy accorde plus que prévu | Le statement n’a ni portée cluster ni portée environnement | Lisez la ligne de résumé du statement | Ajoutez la ressource cluster et la condition d’environnement |
| Un cluster ou un environnement manque dans le sélecteur | Il n’est pas encore enregistré | Infrastructure | Enregistrez-le, puis modifiez la policy |
| Restreindre une policy n’a rien changé | Un autre rôle détenu par l’utilisateur accorde la même permission | Access Explorer sur cet utilisateur | Les permissions sont cumulatives — auditez tous ses rôles |
Une permission env-by-branch se comporte bizarrement selon l’environnement |
Les noms plats sont étendus en variantes par environnement au moment du contrôle | Voir le modèle de permissions de la plateforme | Cantonnez explicitement plutôt que de compter sur le nom plat |
| Policy modifiée, l’utilisateur ne voit rien changer | Cache de permissions de la session | — | Demandez-lui de recharger |
Pour aller plus loin
- Comment fonctionnent les permissions — le modèle complet
- Rôles — rattachez cette policy à un rôle