Sécurité API
Les endpoints API doivent être authentifiés, autorisés, validés et rate-limités.
Règles
- Utiliser le guard token/session approuvé par le projet
- Appliquer le middleware
throttleaux endpoints publics ou à fort volume - Utiliser des policies pour l'accès aux ressources
- Utiliser les API Resources pour éviter les fuites de champs
- Retourner des codes d'erreur cohérents
Middleware obligatoire
Route::middleware(['api', 'api.key', 'throttle:60,1'])
->prefix('api/v1')
->group(function () {
// routes
});
Checklist
- ✅ Middleware
auth:*présent - ✅ Autorisation
can:*ou dans le contrôleur - ✅ Form Request valide les entrées
- ✅ La réponse cache les champs internes
- ✅ Les logs n'exposent pas de secrets
Protection anti-abus (API IA)
| Risque | Protection |
|---|---|
| Boucle infinie d'appels | throttle:30,1 sur POST, throttle:120,1 sur GET |
| Injection dans les paramètres | Validation stricte via Form Requests |
| Exfiltration de données | Réponses plafonnées (limit max par endpoint) |