Rôles & permissions
Qui peut voir et faire quoi. Le modèle est simple : des permissions atomiques, regroupées en rôles, attribués aux comptes.
Le modèle en trois niveaux
ex. invoices.manage → Rôle
ex. Comptable → Compte
un ou plusieurs rôles
- Une permission est une clé atomique
module.action(ex.clients.view). C'est la source de vérité, définie en code. - Un rôle est un paquet nommé de permissions (table
roles+role_permissions), géré dans l'écran Rôles. - Un compte reçoit un ou plusieurs rôles et hérite de l'union de leurs permissions.
- La clé spéciale
*accorde toutes les permissions — réservez-la aux administrateurs.
Convention view / manage
La plupart des modules exposent deux niveaux symétriques :
- module.view
- Lecture seule — consulter listes et fiches.
- module.manage
- Écriture — créer, modifier, supprimer.
Certains modules ajoutent des actions sensibles distinctes (envoi, approbation, transmission légale), accordées séparément pour un contrôle fin.
Catalogue des permissions
Liste de référence, telle que présentée dans l'écran de configuration des rôles (une rubrique par module), rangée ici dans l'ordre de la barre latérale. Chaque module contribue ses propres clés ; le libellé est celui affiché à l'écran.
Navigation
| Module | Clé | Autorise |
|---|---|---|
| Tableau de bord | dashboard.view | Voir le tableau de bord |
| Demandes | demandes.view | Consulter les demandes de contact |
demandes.manage | Traiter / supprimer les demandes | |
| Clients | clients.view | Consulter les clients |
clients.manage | Créer / modifier / supprimer des clients | |
| Factures | invoices.view | Consulter les factures |
invoices.manage | Créer / modifier / supprimer des factures | |
invoices.send | Émettre / envoyer / changer le statut des factures | |
efacture.send | Générer & transmettre les factures électroniques (PDP) | |
| Relances | reminders.view | Consulter les relances (impayés, historique) |
reminders.manage | Paramétrer les niveaux et mettre des factures en pause | |
reminders.send | Envoyer une relance manuellement (dont la mise en demeure) | |
| Stock | stock.view | Consulter les articles et le stock |
stock.manage | Créer / modifier des articles et enregistrer des mouvements | |
| Production | production.view | Consulter les nomenclatures et les ordres de fabrication |
production.manage | Gérer les nomenclatures, créer / planifier / annuler des ordres de fabrication | |
production.execute | Démarrer un ordre, déclarer la production et le rebut (mouvements de stock) | |
| Expéditions | shipping.view | Consulter les expéditions et les transporteurs |
shipping.manage | Créer / modifier / expédier des colis et gérer les transporteurs | |
| Achats | purchases.view | Consulter les fournisseurs, commandes et factures fournisseurs |
purchases.manage | Gérer fournisseurs, commandes (réceptions) et factures fournisseurs | |
| Comptabilité | accounting.view | Consulter le plan comptable, le journal, le grand livre et la balance |
accounting.manage | Saisir des écritures comptables et gérer comptes / journaux | |
| Devis | quotes.view | Consulter les devis |
quotes.manage | Créer / modifier / supprimer des devis | |
| Récurrents | recurring.view | Consulter les paiements récurrents |
recurring.manage | Gérer les paiements récurrents | |
| Projets | projects.view | Consulter les projets et les tableaux de tâches |
projects.manage | Créer / modifier / archiver / supprimer des projets et gérer les membres | |
projects.tasks | Créer / déplacer / modifier / commenter des tâches | |
| Documents | documents.view | Consulter et télécharger les documents |
documents.manage | Téléverser / modifier / versionner / supprimer des documents | |
documents.sign | Envoyer un document en signature électronique | |
| IntegrIA | integria.use | Discuter avec l'agent IA IntegrIA |
integria.configure | Configurer le connecteur IA (fournisseur, modèle, clé d'API) |
Interne
| Module | Clé | Autorise |
|---|---|---|
| Calendrier | calendar.view | Consulter le calendrier partagé |
calendar.manage | Créer / modifier des événements & inviter | |
| Notes de frais | expenses.view | Consulter les notes de frais |
expenses.manage | Créer / modifier des notes de frais | |
expenses.approve | Approuver / rembourser les notes de frais | |
| Paiements internes | internal.view | Consulter les paiements internes |
internal.manage | Gérer les paiements internes (abonnements, achats) | |
| Congés | leaves.view | Consulter mes demandes de congés et le planning d'équipe |
leaves.request | Créer / annuler mes demandes de congés | |
leaves.approve | Approuver / refuser les demandes des autres | |
leaves.manage | Gérer les types d'absence, les soldes et toute demande | |
| Recrutement | recruiting.view | Consulter les offres, les candidats et les entretiens |
recruiting.manage | Gérer les offres, les candidatures, les CV et les entretiens | |
| Formations | training.view | Consulter le catalogue, s'inscrire aux sessions, voir ses formations et certifications |
training.manage | Gérer le catalogue, les sessions, les inscriptions d'autrui et les certifications |
Administration
| Module | Clé | Autorise |
|---|---|---|
| Authentification | accounts.manage | Gérer les comptes (employés & clients) |
roles.manage | Gérer les rôles & permissions | |
| Connecteurs | connectors.view | Consulter les connecteurs & la documentation API |
connectors.manage | Régénérer les clés d'API des connecteurs | |
| Import / Export | dataio.export | Exporter les données métier (CSV / FEC) |
dataio.import | Importer des données métier (CSV) | |
| Audit | audit.view | Consulter le journal d'audit |
audit.export | Exporter le journal d'audit (CSV) | |
audit.manage | Régler la durée de conservation du journal d'audit | |
| Journaux techniques | logs.view | Consulter et télécharger les journaux techniques |
| Paramètres | settings.manage | Gérer les paramètres & le branding |
| Espace client | portal.access | Accéder à l'espace client |
dataio.export exfiltre des données, dataio.import en écrit — deux risques distincts. Accordez-les indépendamment.Créer et attribuer un rôle
- Ouvrez Administration → Authentification, onglet Rôles & permissions (la page exige
accounts.manage, l'ongletroles.manage; accès direct par la route /roles avecroles.manage). - Nouveau rôle : donnez-lui un nom métier clair (ex. « Commercial », « Comptable »).
- Cochez les permissions, regroupées par module. Préférez
viewseul si la lecture suffit. - Attribuez le rôle aux comptes via Authentification → fiche du compte.
Rôles système & permissions par défaut
Trois rôles système existent dès l'installation. Le socle n'accorde que * à l'Administrateur et dashboard.view à l'Employé ; chaque module ajoute ensuite sa part au moment de son installation, une seule fois (vos retouches ultérieures du rôle sont conservées).
| Rôle | Permissions accordées par défaut |
|---|---|
| Administrateur | * — tout |
| Employé | dashboard.view, demandes.view, demandes.manage, clients.view, clients.manage, invoices.view, invoices.manage, invoices.send, reminders.view, stock.view, production.view, shipping.view, shipping.manage, purchases.view, quotes.view, quotes.manage, recurring.view, recurring.manage, projects.view, projects.manage, projects.tasks, documents.view, documents.manage, integria.use, calendar.view, calendar.manage, expenses.view, expenses.manage, internal.view, leaves.view, leaves.request, training.view |
| Client | portal.access (à l'installation de l'Espace client) |
Rien n'est accordé par défaut à l'Employé sur la Comptabilité, le Recrutement ni les modules d'Administration, pas plus que les droits sensibles (efacture.send, reminders.send, stock.manage, purchases.manage, internal.manage, expenses.approve, leaves.approve, documents.sign…) : accordez-les par un rôle dédié.
Exemples de rôles types
| Rôle | Permissions clés |
|---|---|
| Administrateur | * — tout |
| Commercial | clients.*, quotes.*, invoices.view, dashboard.view |
| Comptable | invoices.*, efacture.send, reminders.*, accounting.*, expenses.approve, dataio.export |
| Gestionnaire stock | stock.*, purchases.*, production.*, shipping.* (voir guides modules) |
| Ressources humaines | leaves.*, recruiting.*, training.*, expenses.approve |
| Lecture seule | tous les *.view utiles |
module.* est ici un raccourci de lecture (« toutes les clés du module ») : seul * est un vrai joker. Dans l'écran des rôles, cochez chaque clé.
Chaque module rappelle ses permissions précises dans son propre guide (bandeau « Permissions » en tête de page).