Closed psouquet closed 5 years ago
Après quelques reflections, créer un workspace et visualiser un workspace ne relèvent pas vraiment de permissions. A moins de changer profondément le fonctionnement actuel de cockpit (ce qui est, bien sûr, envisageable).
En prenant cela en considération. Voici un premier jet d'attribution de permissions :
perm/role | admin cpt | admin wksp | dev | archi | deploy | hosting | admin métier |
---|---|---|---|---|---|---|---|
admin globale | ✔ | ||||||
admin wksp | ✔ | ✔ | |||||
att/det bus | ✔ | ✔ | |||||
att/det cont | ✔ | ✔ | |||||
lifecycle art | ✔ | ✔ | ✔ | ✔ | |||
deploy/param art | ✔ | ✔ | ✔ | ||||
niveau logs | ✔ | ✔ | ✔ | ✔ | |||
edit modèle | ✔ | ✔ | |||||
deploy modèle | ✔ | ✔ | |||||
admin flux | ✔ | ✔ | ✔ | ||||
traces monit | ✔ | ✔ | ✔ | ✔ |
Remarques:
L'accès aux ressources et actions doivent être restreintes dans Cockpit. Notamment pour limiter les diverses administrations (techniques et métier) aux personnes responsables, d'autre part pour protéger les données sensibles (production par exemple). Pour ce faire (et afin de décider quelle implémentation est la plus pertinente) nous allons commencer par lister les différentes permissions à accorder ainsi que les roles qui grouperont ces permissions. Par la suite, les permissions et rôles pourront être associés puis affinés (assemblés, divisés ou modifiés) en un système satisfaisant.
Les permissions ne font pas uniquement références aux fonctionnalités existantes ou spécifiés, mais aussi aux fonctionnalités à venir. Ces dernières sont, de fait, mal définies. Il faudra accepter de prendre des décisions (concernant les rôles et permissions) basés sur l'intention de ces fonctionnalités sans digresser et entrer trop dans le détail.
Il faut noter aussi, qu'à priori les rôles pourront être attribués a un couple (utilisateur + workspace) afin d'offrir une granularité suffisante. Par exemple, les rôles généraux comme administrateur cockpit seraient directement liés à un utilisateur tandis que des rôles contextuels comme administrateur workspace seraient liés à un utilisateur et un workspace. Un même utilisateur pourra donc avoir un même rôle sur différent workspaces et ne pas l'avoir sur d'autres.
Permissions:
liste des permissions
remarques
L'accès aux différentes vues d'un workspace (topologie, services, api, modèle?, monitoring?) ne fait pas partie des permissions, il n'est pas limité en soi. Une fois que l'on a accès au workspace on a accès à ces vues. (les actions ou ressources proposés par ces vues peuvent cependant être limités) Edit: split de la permission cycle de vie jbi en deux permissions ( "deploy/undeploy/permission" et "cycle de vie")
Rôles
liste des rôles
remarques
Dans un premier temps, les rôles reprennent les utilisateurs cible de cockpit en y ajoutant deux profils d'administration. Edit: Precision de exploitant/opérateur de production en deux rôles: service déploiement et service hosting.