L’objectif de ce groupe de travail était de :

  • maquetter des IHM pour la nouvelle version de Zéphir en cours de développement ;
  • définir la navigation entre les différents cas d’utilisation ;
  • intégrer des notions de droits en lien avec les outils d’administration EOLE.

Rôles et ACL

Les premières réflexions se sont portées sur la définition des besoins en terme de rôles et de droits utilisateur.

Il apparaît très vites que certains rôles nécessitent des droits de gestions transverses :

  • création de serveurs ;
  • modification de variables ou de familles ;
  • utilisation ou non de certains outils (ERA…) ou de certaines fonctionnalités propre à un outil ;
  • accès console avec ou sans droits sudoers ;

La formalisation des besoins fait apparaître trois rôles qui pourraient être personnalisables par des ACL lors de l’association à un groupe :

  • rôle Invité : lecture seule des données ;
  • rôle Opérateur : peut tout lire, déclencher des actions, mais ne modifier aucun paramètre ;
  • rôle Administrateur : peut tout faire.

Lien entre rôle et modèle de serveur

Un modèle de serveur (ou ServerModel) décrit l’ensemble de services applicatifs le constituant. Ce terme englobe les anciennes notions de module et de variante propre à EOLE.

Cas d’usage : les Maison de l’État

Pour chaque modèle de serveur, il faut définir des ACL pour chacun des trois rôles.

  • ServerModel : Amon Maison État
    • Invité = …
    • Opérateur = Actions Serveurs + Règles optionnelles + Logs
    • Admin = …
  • ServerModel : Amon eSSL
    • Invité = …
    • Opérateur =ERA Actions Serveurs + Logs
    • Admin = …

Gestion des groupes de serveurs

Certains besoins ont été identifiés pour la gestion des serveurs.

Sélection de serveurs

Il est nécessaire d’avoir une sélection de serveurs à un instant T sur laquelle des actions sont possibles (envoi de configuration, comparaison de configurations…).

La sélection est réalisée à partir d’un filtre :

  • seuls les serveurs pour lesquels on dispose d’un droit de gestion sont sélectionnables (pré-filtrage implicite) ;
  • des raccourcis permettent rapidement de filtrer la liste sur la base de critères courants.

Groupe de serveurs

Un groupe est l’enregistrement d’une sélection ou de critères sélection → Débat : les groupes créés à partir de critères de recherche sont-ils statiques ou dynamiques ?

Il est possible de déléguer des droits de gestion (ACL) sur un groupe de serveurs pour des personnes identifiées.

Droits de gestion

Des droits de gestion peuvent être accordés en fonction de nombreux critères  :

  • droits sur des groupes de serveur ;
  • droits sur des sites ;
  • droits sur des modèles de serveur ;

Le processus de création d’un serveur reste à définir : faut il l’associer à un ou plusieurs groupes dès le départ pour ensuite hériter des droits de gestion ?

Proposition d’écrans liés à la gestion des droits

Vue utilisateur de la gestion des serveurs

L’utilisateur peut accéder aux serveurs, aux modèles de serveurs et aux sites pour lesquels il possède des droits.

Vue détaillée d’un serveur donné

Les fonctionnalités proposées, les droits, dépendent du rôle de l’utilisateur.

Vue des rôles et des groupes pour un utilisateur donné

Un système de délégation de droits sur une période définie pourrait être envisagé.

Vue de la délégation de droits sur un serveur

Il est possible de connaître la liste des profils et le rôle associé qui ont des droits sur un serveur.

Vue édition d’un rôle sur un modèle de serveur

Il est possible de personnaliser les droits associés à un rôle.

Conclusion

Les définitions et les vues proposées à partir de besoin exprimés par le MTES ont permis de définir des axes de travail pour implémenter la gestion des droits et des rôles dans Zéphir.