feat: Audit trail pour actions sensibles
Story 1.7 - Implémente un système complet d'audit trail pour tracer toutes les actions sensibles (authentification, modifications de données, exports) avec immuabilité garantie par PostgreSQL. Fonctionnalités principales: - Table audit_log append-only avec contraintes PostgreSQL (RULE) - AuditLogger centralisé avec injection automatique du contexte - Correlation ID pour traçabilité distribuée (HTTP + async) - Handlers pour événements d'authentification - Commande d'archivage des logs anciens - Pas de PII dans les logs (emails/IPs hashés) Infrastructure: - Middlewares Messenger pour propagation du Correlation ID - HTTP middleware pour génération/propagation du Correlation ID - Support multi-tenant avec TenantResolver
This commit is contained in:
7
.github/workflows/ci.yml
vendored
7
.github/workflows/ci.yml
vendored
@@ -193,6 +193,13 @@ jobs:
|
||||
# Generate JWT keys if they don't exist (required for login/token endpoints)
|
||||
docker compose exec -T php php bin/console lexik:jwt:generate-keypair --skip-if-exists
|
||||
|
||||
- name: Create test database and run migrations
|
||||
run: |
|
||||
# Create test database (Symfony adds _test suffix in test environment)
|
||||
docker compose exec -T php php bin/console doctrine:database:create --if-not-exists
|
||||
# Run migrations to create all tables (including audit_log)
|
||||
docker compose exec -T php php bin/console doctrine:migrations:migrate --no-interaction
|
||||
|
||||
- name: Show backend logs on failure
|
||||
if: failure()
|
||||
run: docker compose logs php
|
||||
|
||||
Reference in New Issue
Block a user