Verificación de exportaciones de auditoría con keenauth audit verify

keenauth audit verify comprueba una exportación de auditoría de gestión en su propio equipo. No se conecta con KeenAuth, no necesita clave de API ni sesión keenauth login, por lo que no tiene que confiar en la plataforma para confiar en la exportación.

Qué demuestra

El comando toma el paquete de exportación que descargó (un archivo tar con records.ndjson.gz, manifest.json y manifest.jws) y el audit-jwks.json regional. Después:

  1. comprueba la firma de manifest.jws con la clave del punto de control de auditoría y que manifest.json es su carga útil;
  2. comprueba el tamaño y el SHA-256 de records.ndjson.gz con respecto al manifiesto;
  3. recalcula el hash de cada registro y comprueba que los números de secuencia son consecutivos y que cada registro apunta al hash del anterior;
  4. reconstruye la hoja de cada hora y sigue su prueba de inclusión (RFC 9162) hasta la raíz del punto de control horario firmado.

Por tanto, demuestra que los registros del paquete no se modificaron, eliminaron ni reordenaron. No demuestra que sus filtros se aplicaran correctamente. La hoja contiene el ID del entorno, así que una prueba de otro entorno no es válida para sus registros.

Uso

keenauth audit verify --bundle audit-export.tar --jwks audit-jwks.json --environment-id 0192b6f0-7c1e-7a55-8f3d-2a6f0e9d4b11
Opción Descripción
--bundle Ruta del paquete de exportación descargado (obligatoria).
--jwks Ruta del audit-jwks.json regional (obligatoria).
--environment-id ID del entorno (UUID) al que debe pertenecer el paquete. Recomendado: sin él, el comando muestra una advertencia y no comprueba el entorno.
--output, -o table, json o yaml. Sin la opción, la CLI muestra una tabla en un terminal y JSON en caso contrario.

Si tiene éxito, el comando muestra un resumen (verified, export_id, environment_id, cell, stream, from, to, record_count, line_count, windows, key_id, include_ip) y finaliza con código 0. record_count cuenta los registros que coinciden con su filtro; line_count también cuenta las líneas de marcador de posición de los registros fuera del filtro.

Si falla alguna comprobación, el comando no imprime nada en la salida estándar, escribe audit verification failed (<kind>) en la salida de error estándar y finaliza con código 1. El tipo es signature, manifest, chain, proof o format. Un archivo no legible o una opción obligatoria ausente finaliza con código 2.

Consulte la API de exportación de auditoría para saber cómo crear y descargar una exportación.