Verifica degli export di audit con keenauth audit verify
keenauth audit verify controlla un export di audit di gestione sulla tua macchina. Non contatta KeenAuth, non richiede una chiave API né una sessione keenauth login, quindi non devi fidarti della piattaforma per fidarti dell'export.
Cosa dimostra
Il comando prende il bundle di export che hai scaricato (un file tar con records.ndjson.gz, manifest.json e manifest.jws) e la audit-jwks.json regionale. Poi:
- controlla la firma di
manifest.jwscon la chiave del checkpoint di audit e chemanifest.jsonsia il suo payload; - controlla dimensione e SHA-256 di
records.ndjson.gzrispetto al manifest; - ricalcola l'hash di ogni record e verifica che i numeri di sequenza siano consecutivi e che ogni record punti all'hash del precedente;
- ricostruisce la foglia di ogni ora e ne segue la prova di inclusione (RFC 9162) fino alla radice del checkpoint orario firmato.
Quindi dimostra che i record nel bundle non sono stati modificati, rimossi o riordinati. Non dimostra che i tuoi filtri siano stati applicati correttamente. La foglia contiene l'ID dell'ambiente, quindi una prova per un altro ambiente non vale per i tuoi record.
Utilizzo
keenauth audit verify --bundle audit-export.tar --jwks audit-jwks.json --environment-id 0192b6f0-7c1e-7a55-8f3d-2a6f0e9d4b11
| Flag | Descrizione |
|---|---|
--bundle |
Percorso del bundle di export scaricato (obbligatorio). |
--jwks |
Percorso della audit-jwks.json regionale (obbligatorio). |
--environment-id |
ID dell'ambiente (UUID) a cui deve appartenere il bundle. Consigliato: senza di esso il comando stampa un avviso e non controlla l'ambiente. |
--output, -o |
table, json o yaml. Senza il flag la CLI stampa una tabella in un terminale e JSON altrimenti. |
In caso di successo il comando stampa un riepilogo (verified, export_id, environment_id, cell, stream, from, to, record_count, line_count, windows, key_id, include_ip) ed esce con codice 0. record_count conta i record che corrispondono al tuo filtro; line_count conta anche le righe segnaposto per i record fuori dal filtro.
Se un controllo fallisce, il comando non stampa nulla sullo standard output, scrive audit verification failed (<kind>) sullo standard error ed esce con codice 1. Il tipo è signature, manifest, chain, proof o format. Un file illeggibile o un flag mancante escono con codice 2.
Per sapere come creare e scaricare un export, consulta l'API degli export di audit.