feat(audit) : contexte forensique dans le journal d'activité (IP, appareil, device id) #33

Merged
tristan merged 23 commits from feature/SIRH-41-ajouter-plus-d-info-dans-le-journal-d-activite into develop 2026-06-24 11:56:43 +00:00

23 Commits

Author SHA1 Message Date
tristan 608eeaa450 feat(audit) : filtres Employé et Utilisateur en champ texte (recherche libre)
Employé = recherche partielle sur nom/prénom (nouveau filtre back 'employee', LIKE via join) ;
Utilisateur = recherche partielle sur username. Remplace les selects par des champs texte.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 12:05:07 +02:00
tristan 06e462ef31 feat(audit) : pagination défaut 10 + filtres employé/utilisateur en select
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 11:52:20 +02:00
tristan e6a84af9b5 docs(audit) : documente la refonte de l'écran journal 2026-06-24 11:30:36 +02:00
tristan 04517bf1a6 fix(audit) : importe onMounted explicitement dans l'écran journal
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 11:29:41 +02:00
tristan 34ed3d0222 feat(audit) : refonte écran journal (MalioDataTable + drawers filtre & détail)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 11:26:20 +02:00
tristan 32b1af2377 feat(audit) : composable useAuditLogsList (filtres brouillon/appliqué + pagination) 2026-06-24 11:22:53 +02:00
tristan 60fea783c0 feat(audit) : étend AuditLogFilters (multi-type/action, user/ip/appareil, perPage) 2026-06-24 11:20:18 +02:00
tristan 4c46b2b32c feat(audit) : filtres journal enrichis (utilisateur/ip/appareil, multi-type/action, perPage) 2026-06-24 11:16:58 +02:00
tristan 2d284b897b docs : plan refonte écran journal (MalioDataTable + drawers)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 11:14:40 +02:00
tristan c9fd973da3 docs : spec refonte écran journal (MalioDataTable + drawer filtre)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 11:03:36 +02:00
tristan 39cdfd7428 docs(audit) : note la dépendance CORS de X-Device-Id
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 10:50:03 +02:00
tristan 95bf8c4c0a fix(audit) : autorise l'en-tête X-Device-Id en CORS (débloque le front)
Le front envoie X-Device-Id sur toutes les requêtes (cross-origin :3001 -> :8081).
Sans l'ajouter à allow_headers, le préflight CORS échoue et le navigateur bloque
toutes les requêtes API. Vérifié : préflight OPTIONS passe de 400 à 200.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 10:49:04 +02:00
tristan 8c1cd6704e test(audit) : utilise createStub pour une sortie PHPUnit propre
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 10:37:12 +02:00
tristan 48ee173461 refactor(audit) : alias explicite + borne le user-agent stocké
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 10:34:03 +02:00
tristan 4513896112 docs(audit) : documente le contexte forensique du journal 2026-06-24 10:29:54 +02:00
tristan d44759eb14 docs(audit) : documente trusted_proxies pour l'IP du journal 2026-06-24 10:27:53 +02:00
tristan cc9b50a765 feat(audit) : envoie un device id persistant sur les requêtes API 2026-06-24 10:25:50 +02:00
tristan 62dcae1879 feat(audit) : expose le contexte forensique dans l'API lecture 2026-06-24 10:20:27 +02:00
tristan 003835463b feat(audit) : capture IP/appareil/user-agent dans AuditLogger 2026-06-24 10:15:58 +02:00
tristan 9f0e624138 feat(audit) : colonnes contexte forensique sur audit_logs 2026-06-24 10:13:39 +02:00
tristan 3939ea75e5 feat(audit) : ajoute UserAgentParser (libellé appareil lisible) 2026-06-24 10:10:58 +02:00
tristan 025ce8a367 docs : plan implémentation contexte forensique journal
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 10:09:09 +02:00
tristan 3510d5253d docs : spec contexte forensique journal d'activité
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 10:01:36 +02:00