Vue d’ensemble
Cette matrice montre toutes les permissions dans Agatabo, les actions qu’elles contrôlent et les rôles qui les possèdent généralement.Format des permissions
Format :resource:action
Exemple : savings:write = permission d’écrire (créer/modifier) des enregistrements d’Épargne
Portées :
- SELF : accès uniquement à ses propres données
- ANY : accès à toutes les données de l’organisation
Liste complète des permissions
Utilisateurs d’organisation
Épargne et Dépôts
Prêts
Dépenses
Immobilisations
Réserves
Dividendes
Grand Livre et comptabilité
Rapports
Note : les rapports n’ont généralement pas de permissions spécifiques. L’accès dépend des permissions sur les données sous-jacentes. Exemples :- Bilan : exige
ledger:read(ANY) - Prêts en Cours : exige
loans:read(ANY) - Relevé d’Épargne du Membre : exige
savings:read(SELF ou ANY)
Paramètres et administration
Correspondances de rôles courantes
Administrateur (accès complet)
Peut faire : tout
Trésorier
Peut faire : enregistrer les Dépôts, enregistrer les Dépenses, voir les rapports financiers
Ne peut pas faire : créer des prêts, assigner des rôles, modifier les paramètres
Agent de crédit
Peut faire : créer/gérer les prêts, enregistrer les paiements, appliquer des Pénalités
Ne peut pas faire : enregistrer Dépôts/Dépenses, comptabiliser des Écritures Comptables, assigner des rôles
Comptable
Peut faire : voir toutes les données financières, exécuter les rapports, comptabiliser des écritures d’ajustement, voir la piste d’audit
Ne peut pas faire : enregistrer des transactions opérationnelles (Dépôts, prêts), assigner des rôles, modifier les paramètres
Membre (basique)
Peut faire : voir sa propre Épargne, ses prêts, son relevé de compte, ses Dividendes
Ne peut pas faire : voir les données d’autres membres, enregistrer des transactions, accéder aux paramètres
Héritage des permissions
Plusieurs rôles :- Si un utilisateur a plusieurs rôles, les permissions sont cumulatives (union)
- Exemple : un utilisateur avec Trésorier + Agent de crédit peut enregistrer des Dépôts ET créer des prêts
- Si la même permission est accordée avec différentes portées, la portée ANY gagne
- Exemple : l’utilisateur a
savings:readSELF depuis le rôle Membre +savings:readANY depuis le rôle Trésorier = l’utilisateur obtient la portée ANY
Cas spéciaux
Demandes de prêt en libre-service
- Un Membre avec
loans:write(portée SELF) peut soumettre des demandes de prêt - Exige que l’administrateur configure la fonctionnalité libre-service
- Les demandes nécessitent toujours l’approbation du comité de prêt
Écritures Comptables restreintes
- La permission
ledger:writepermet de créer des Écritures Comptables manuelles - Certains types d’écriture peuvent être restreints (par ex. écritures de clôture) même avec la permission
- Le système empêche la création d’écritures dans des Périodes clôturées, quelle que soit la permission
Paramètres au niveau de l’organisation
settings:writeest puissant - accorde la capacité de modifier la devise, le fuseau horaire, etc.- Doit être donné uniquement à des administrateurs de confiance
- Les changements affectent toute l’organisation et tous les utilisateurs
Contrôles de permission dans Agatabo
Où les permissions sont vérifiées :- UI : boutons/menus masqués si permission insuffisante
- API : le serveur valide la permission avant d’exécuter l’action
- Rapports : filtrés selon la portée (SELF vs ANY)
- “You don’t have permission to perform this action” = permission entièrement manquante
- “You can only access your own data” = permission présente avec portée SELF, tentative d’accès aux données d’autres utilisateurs
Besoin d’aide ?
Comprendre les Permissions
Guide détaillé des permissions
Rôles des Membres
Gestion des rôles