← Retour aux parcours

🛡️ RBAC & Permissions

Contrôle d'accès basé sur les rôles. 27 permissions couvrant l'ensemble des modules, 4 rôles prédéfinis, middleware applicatif pour la vérification automatique.

Parcours détaillé

1

Attribution des permissions aux rôles

Admin

L'administrateur attribue des permissions aux rôles (super_admin, manager, agent_back_office, gérant). Chaque permission correspond à une action précise dans un module.

POST /api/v1/admin/permissionsPATCH /api/v1/admin/permissions/{role} Permissions: create_demande, valider_demande, soumettre_devis, gerer_equipements, moderer_avis, gerer_certifications, gerer_articles, gerer_contacts, gerer_roles, voir_tableau_bord, gerer_utilisateurs, gerer_categories, gerer_prestations, gerer_badges, gerer_permissions, gerer_propositions, gerer_missions, annuler_demande, voir_demandes, voir_devis, voir_missions, gerer_appels_video, gerer_notifications, gerer_conversations, exporter_donnees, importer_donnees, configurer_systeme

Scénario : L'administrateur veut qu'un agent back-office puisse modérer les avis. Il attribue la permission moderer_avis au rôle agent_back_office.

2

Middleware Permission

Interne

Le middleware vérifie automatiquement si l'utilisateur authentifié possède la permission requise pour accéder à une route. Si la permission est absente, une réponse 403 est retournée.

Middleware: PermissionMiddleware

Scénario : Un manager tente d'accéder à l'admin des équipements sans la permission gerer_equipements. Le middleware bloque l'accès avec un 403 Forbidden.

3

Séparation des accès par rôle

Admin

Chaque route admin est protégée par le middleware auth:sanctum et permission. Les 4 rôles ont des accès distincts : super_admin (tout), manager (opérations métier), agent_back_office (tâches spécifiques), gérant (supervision).

Scénario : Trois utilisateurs connectés : super_admin voit tout le panneau d'administration, agent_back_office ne voit que la section avis à modérer, gérant voit les tableaux de bord sans pouvoir modifier.