Choisir la bonne stratégie d’autorisation est une décision architecturale qui a des conséquences durables sur la sécurité, la maintenabilité et l’expérience utilisateur. Ce chapitre explore les stratégies d’autorisation pour les architectures modernes, des plus simples aux plus sophistiquées.
└── OUI → Besoin de contexte (temps, lieu, classification) ?
├── NON → RBAC avec rôles supplémentaires
└── OUI → Relations entre entités importantes ?
├── OUI → ReBAC (Zanzibar)
└── NON → ABAC ou RBAC+ABAC hybride
Points Clés à Retenir
Le spectre des modèles d’autorisation va de DAC (le plus simple) à PBAC (le plus sophistiqué) — le choix du bon modèle dépend du nombre d’utilisateurs, de la granularité requise, des relations entre entités et de la maturité opérationnelle
L’approche hybride RBAC+ABAC est la plus pragmatique pour la plupart des organisations : RBAC pour le contrôle d’accès de base basé sur les rôles, avec des règles ABAC pour les décisions contextuelles (temps, lieu, classification de la ressource)
L’autorisation dans les microservices présente des défis spécifiques : décentralisation, latence, consistance et traçabilité — les solutions incluent API Gateway, sidecar OPA, JWT avec claims, service mesh et PDP centralisé
Les modèles d’authentification API vont de la clé API (faible sécurité, facile) à mTLS et HMAC (haute sécurité, complexe) — OAuth 2.0 Client Credentials est le meilleur équilibre pour les communications M2M
Le cadre décisionnel pour choisir le modèle d’autorisation repose sur 8 questions clés — l’arbre de décision simplifié guide le choix : RBAC pour les besoins simples, ABAC ou RBAC+ABAC pour la granularité contextuelle, ReBAC pour les relations entre entités