Aller au contenu principal

Événements et chaîne

L'écran Événements et chaîne vous permet de chercher dans la piste d'audit de votre tenant, de vérifier que sa chaîne de hachage est intacte et d'exporter une période vers un stockage immuable (WORM). Chemin dans le portail : /audit/events (menu Audit > Événements et chaîne, titre de page Événements d'audit). Les auditeurs, les responsables sécurité et les administrateurs de tenant l'utilisent pour répondre à « qui a fait quoi, quand, avec quelle décision ».

Ce que montre l'écran​

ZoneContenu
Section Chaîne de hachageChaque événement contient le hachage du précédent ; la vérification recalcule la chaîne. Avant une vérification : Non vérifiée pendant cette session. Après : le badge Chaîne intacte ou Chaîne rompue et le JSON du résultat (valid, count, broken_at, reason, verified_at).
FiltresActeur (identifiant de l'acteur), Action (nom exact, ou préfixe terminé par * comme finops.*), Ressource (type ou type:id), Résultat (success, failure, denied), Identifiant de trace, Du et Au (horodatages ISO 8601).
Tableau ÉvénementsColonnes : Séquence, Heure, Acteur, Action, Type de ressource, Identifiant de ressource, Décision, Résultat. Du plus récent au plus ancien, 50 événements par page.
Panneau de détailUn clic sur une ligne charge l'événement complet (acteur, ressource, décision, preuve, hachages).
Exporter vers un stockage WORMFormulaire : Du (par exemple 2026-01-01T00:00:00Z), Au, Rétention (jours) (365 par défaut), avec un panneau Résultat. Les exports sont écrits sur un stockage immuable (WORM) et tracés dans la piste d'audit.
État videAucun événement d'audit : chaque mutation et décision de politique écrit un événement.

Chaque recherche et chaque vérification est elle-même enregistrée comme un accès à la piste d'audit.

Actions​

Bouton ou actionCe qu'il faitAppel APIRôles
Vérifier la chaîneRecalcule la chaîne de hachage du tenant et affiche le verdict.GET /v1/audit/verifyauditor, security_officer, tenant_admin, platform_admin
FiltrerApplique les filtres remplis.GET /v1/audit/events (actor, action, resource, outcome, trace_id, from, to, limit, cursor)auditor, security_officer, tenant_admin, platform_admin
Actualiser (icône flèche ronde)Recharge la liste.GET /v1/audit/eventsMêmes rôles
Charger plusCharge la page suivante d'événements plus anciens.GET /v1/audit/events (cursor)Mêmes rôles
Clic sur une ligneOuvre le panneau de détail.GET /v1/audit/events/{event_id}Mêmes rôles
Exécuter (Exporter vers un stockage WORM)Écrit les événements de la période, signés, avec un manifeste, sur le stockage WORM (le profil de stockage audit_worm du tenant, sinon le profil de plateforme nommé par EAI_AUDIT_WORM_STORAGE_PROFILE), et renvoie le manifeste.POST /v1/audit/exportauditor, security_officer, tenant_admin, platform_admin

Rôles​

RôleAccès
auditor, security_officer, tenant_adminOuvrent l'écran (portal/src/lib/nav-access.ts), cherchent, vérifient et exportent (READERS de services/control-plane/src/eai/domains/observability/audit_api.py).
platform_adminMêmes droits ; chaque route exige un contexte de tenant (sinon tenant_required).
Autres rôlesL'entrée est masquée ; la page affiche Vos rôles n'ouvrent pas cette page.
danger

Un verdict Chaîne rompue signifie qu'un événement de la piste a été modifié ou supprimé. Ne le corrigez pas à la main : conservez le JSON du résultat (il nomme broken_at et la reason) et ouvrez un incident de sécurité.

Tâches courantes​

Vérifier l'intégrité de la piste d'audit​

  1. Vérifier la chaîne. La vérification prouve qu'aucun événement n'a été altéré depuis son écriture. Cliquez sur Vérifier la chaîne. Résultat attendu : le badge Chaîne intacte et un JSON avec valid: true et le count des événements vérifiés. En cas d'échec : avec Chaîne rompue, conservez le JSON et déclarez un incident dans Incidents.

Trouver qui a modifié un quota​

  1. Filtrer sur l'action. Saisissez finops.quota.* dans Action pour lister tous les événements de quota (création, modification, suppression, et les réservations des passerelles), puis cliquez sur Filtrer. Résultat attendu : le tableau liste les événements de quota avec leur Acteur. En cas d'échec : si Aucun événement d'audit s'affiche, élargissez Du et Au ou vérifiez le préfixe de l'action.
  2. Ouvrir l'événement. Cliquez sur la ligne pour lire l'événement complet. Résultat attendu : le panneau montre l'acteur, la ressource, la décision et la preuve. En cas d'échec : not_found signifie que l'identifiant de l'événement n'est pas dans votre tenant.

Exporter un trimestre pour un audit externe​

  1. Remplir la période. Dans Exporter vers un stockage WORM, saisissez Du et Au en horodatages ISO 8601 et la Rétention (jours) pendant laquelle le stockage doit garder l'export (1 à 3650). Résultat attendu : les champs sont remplis. En cas d'échec : si un avis de rôle remplace le formulaire, demandez le rôle auditor.
  2. Exporter. Cliquez sur Exécuter. Résultat attendu : le panneau Résultat montre le manifeste : fichier, count, sha256, signature et rétention. En cas d'échec : storage_profile_not_found ou storage_capability_missing signifie que le profil de stockage WORM est absent ou non vérifié ; voyez Profils de stockage.

Dépannage​

SymptômeCauseCorrection
Vos rôles n'ouvrent pas cette pageVos rôles ne sont pas parmi auditor, security_officer, tenant_admin, platform_admin.Demandez le rôle auditor.
Erreur forbidden (HTTP 403) : « Vous n'avez pas le rôle requis pour cette opération. »Le jeton n'a aucun rôle de lecture de la piste d'audit.Reconnectez-vous avec un compte d'auditeur.
Erreur tenant_required (HTTP 403)Administrateur de plateforme sans tenant.Connectez-vous à un tenant.
Erreur storage_profile_not_found (HTTP 404) : « Profil de stockage ... introuvable. »EAI_AUDIT_WORM_STORAGE_PROFILE nomme un profil de plateforme qui n'existe pas.Créez le profil ou corrigez le réglage.
Erreur storage_capability_missing (HTTP 409)Le profil WORM n'a pas de capacité vérifiée de verrouillage d'objet ou de rétention.Vérifiez le profil dans Profils de stockage.
Erreur validation_error (HTTP 422)Rétention (jours) hors de 1 à 3650, ou un horodatage qui n'est pas ISO 8601.Corrigez le champ.
Chaîne rompueUn événement a été modifié ou supprimé.Conservez le résultat et ouvrez un incident.

Pages liées​