Middleware
Le middleware gère les préoccupations transversales des requêtes.
Usages approuvés
| Préoccupation | Exemple |
|---|---|
| Authentification | keycloak.auth, api.key |
| Portes de rôle ou permission | can:*, middleware de permission custom |
| Contexte locale ou tenant | Résolution du contexte applicatif |
| Durcissement de la requête | Rate limits, headers, limites de payload |
:::warning Important Le middleware n'est pas un remplacement pour les policies. Utiliser les deux quand nécessaire. :::
Middleware globaux
| Middleware | Rôle |
|---|---|
KeycloakAuthenticated | Vérifie le token Keycloak — redirige vers login si absent |
ApiKeyAuthenticated | Vérifie le Bearer token API (X-API-Key) |
Checklist
- ✅ Fait une seule chose claire
- ✅ Retourne tôt pour les requêtes non autorisées
- ✅ Log les échecs de sécurité suspects quand utile
- ✅ Ne contient pas de workflows métier
Champs de sécurité (headers)
Les headers de sécurité sont configurés au niveau Nginx, pas dans le middleware Laravel (Content-Security-Policy, X-Frame-Options, etc.).