Avancé 3 : Exiger une permission¶
Objectif : réserver le back-office à certains rôles, si le projet utilise RBAC.
Le point de départ¶
Par défaut, le back-office demande seulement d'être authentifié.
Pour aller plus loin et exiger une permission, le projet active l'option
explicitement.
Activer la permission¶
Dans le branchement (mvc/routes.py), passez une permission :
Le comportement dépend de la présence de l'opt-in forge-mvc-rbac :
- s'il est installé, un utilisateur sans la permission
admin.accessreçoit une
réponse 403 ; - s'il n'est pas installé, le back-office reste en authentification seule, et
forge doctorle signale.
Sans ce paramètre, rien ne change : l'authentification seule protège l'admin.
Déclarer la permission¶
Avec forge-mvc-rbac, ajoutez la permission à un rôle dans le contrat
mvc/security/rbac.json :
Vérifier la cohérence¶
forge admin:doctor rapproche vos ressources des contrats d'entité (table,
colonnes, clé primaire) et signale les écarts, en lecture seule.
À retenir¶
- La permission est un opt-in explicite ; le défaut reste l'authentification.
- Sans
forge-mvc-rbac, l'admin ne se verrouille pas par surprise.