Audit-Exporte mit keenauth audit verify prüfen
keenauth audit verify prüft einen Management-Audit-Export auf Ihrem eigenen Rechner. Der Befehl kontaktiert KeenAuth nicht, benötigt keinen API-Schlüssel und keine keenauth login-Sitzung. Sie müssen der Plattform daher nicht vertrauen, um dem Export zu vertrauen.
Was er belegt
Der Befehl nimmt das heruntergeladene Export-Bundle (eine tar-Datei mit records.ndjson.gz, manifest.json und manifest.jws) und den regionalen audit-jwks.json entgegen. Anschließend führt er folgende Schritte aus:
- prüft die Signatur von
manifest.jwsmit dem Schlüssel für Audit-Checkpoints sowie, dassmanifest.jsondessen Nutzlast ist; - prüft Größe und SHA-256 von
records.ndjson.gzanhand des Manifests; - berechnet den Hash jedes Datensatzes neu und prüft, dass die Sequenznummern fortlaufend sind und jeder Datensatz auf den Hash des vorherigen Datensatzes verweist;
- baut das Blatt jeder Stunde neu auf und folgt seinem Inklusionsbeweis (RFC 9162) bis zur Wurzel des signierten stündlichen Checkpoints.
Der Befehl belegt also, dass die Datensätze im Bundle nicht verändert, entfernt oder umsortiert wurden. Er belegt nicht, dass Ihre Filter korrekt angewendet wurden. Das Blatt enthält die Umgebungs-ID, daher gilt ein Beweis für eine andere Umgebung nicht für Ihre Datensätze.
Verwendung
keenauth audit verify --bundle audit-export.tar --jwks audit-jwks.json --environment-id 0192b6f0-7c1e-7a55-8f3d-2a6f0e9d4b11
| Option | Beschreibung |
|---|---|
--bundle |
Pfad des heruntergeladenen Export-Bundles (erforderlich). |
--jwks |
Pfad des regionalen audit-jwks.json (erforderlich). |
--environment-id |
Umgebungs-ID (UUID), zu der das Bundle gehören muss. Empfohlen: Ohne sie gibt der Befehl eine Warnung aus und prüft die Umgebung nicht. |
--output, -o |
table, json oder yaml. Ohne die Option gibt die CLI in einem Terminal eine Tabelle aus, sonst JSON. |
Bei Erfolg gibt der Befehl eine Zusammenfassung aus (verified, export_id, environment_id, cell, stream, from, to, record_count, line_count, windows, key_id, include_ip) und endet mit dem Code 0. record_count zählt die Datensätze, die Ihrem Filter entsprechen. line_count zählt zusätzlich die Platzhalterzeilen für Datensätze außerhalb des Filters.
Schlägt eine Prüfung fehl, gibt der Befehl nichts auf der Standardausgabe aus, schreibt audit verification failed (<kind>) auf die Standardfehlerausgabe und endet mit dem Code 1. Die Art ist signature, manifest, chain, proof oder format. Eine nicht lesbare Datei oder eine fehlende Option führt zum Code 2.
Informationen zum Erstellen und Herunterladen eines Exports finden Sie unter der Audit-Export-API.