Aller au contenu principal

Logs et audit sécurité

Les opérations sensibles doivent être loggées avec un contexte sanitisé.

Événements d'audit obligatoires

  • Échecs de login et accès suspects
  • Changements de rôle et permission
  • Activation/désactivation d'utilisateur
  • Changements de paramètres
  • Exécution d'imports/exports
  • Échecs d'autorisation API sur les ressources critiques

À faire / À ne pas faire

À faire :

  • Logger les IDs stables
  • Logger les noms de module et d'action
  • Logger la classe et le message sûr de l'exception

À ne pas faire :

  • Logger les mots de passe, tokens, cookies, secrets ou données personnelles brutes
  • Avaler les exceptions en silence
  • Utiliser les logs comme seule source d'état métier

Pattern

// Succès sensible
Log::info('Permission assigned', [
'actor_id' => auth()->id(),
'id_user' => $user->id_user,
'id_permission' => $permission->id_permission,
'module' => 'admin',
'action' => 'permission.assigned',
]);

// Échec
Log::error('Import failed', [
'module' => 'analyses',
'action' => 'import.run',
'error' => $e->getMessage(),
]);