Aller au contenu principal

Module Rôles & Permissions

Module technique réservé aux ADMIN_SYSTEM / SUPER_ADMIN. Il expose le catalogue des rôles et la matrice des permissions.

Vocabulaire

TermeDéfinition
Rôle de gestion (management_role_code)ADMIN_UNITE / ADMIN_GROUPE / ADMIN_DISTRICT / ADMIN_REGION / ADMIN_NATION + ADMIN_SYSTEM / SUPER_ADMIN
PermissionAction atomique (ex: informations.create, users.suspend, transfers.validate.region_origin)
Catalogue de permissionsToutes les permissions définies (table permissions_catalog)
GrantLien role × permission (table role_permissions)
Permission *Wildcard : tout autoriser (réservé SUPER_ADMIN / ADMIN_SYSTEM)

Doctrine — Catalogue centralisé

Les permissions suivent le format governance.<resource>.<action> :

  • governance.users.invite
  • governance.structures.create
  • governance.structures.delete
  • governance.transfers.validate.region_destination
  • informations.create, informations.publish, informations.archive

Référence : EDR-005.

Accéder au module

Sidebar → AdministrationRôles & permissions.

Matrice rôles permissions — placeholder

Workflow type — Ajouter une permission à un rôle

  1. Ouvrir la matrice (colonnes = rôles, lignes = permissions)
  2. Cocher / décocher les cellules concernées
  3. Sauver → grant inséré / supprimé en DB
Impact immédiat

Toute modification du grant est effective immédiatement pour tous les utilisateurs ayant ce rôle (via leur rôle ACTIF, mig 0199). Les sessions en cours rafraîchissent leurs permissions au prochain RPC.

Doctrine — Modèle contractuel R5

Permissions = contrat évalué par fn_user_can_do(user_id, action_code, resource_id, context) dans chaque RPC critique. Pas de if (user.role === 'ADMIN_X') en dur dans le code (LRN-005).

Voir aussi