

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Validar la integridad del archivo de CloudTrail registro con el AWS CLI
<a name="cloudtrail-log-file-validation-cli"></a>

Para validar los registros con el AWS Command Line Interface, utilice el CloudTrail `validate-logs` comando. Para realizar la validación, el comando utiliza los archivos de resumen enviados a su bucket de Amazon S3. Para obtener más información sobre los archivos de resumen, consulte [CloudTrail estructura de archivos de resumen](cloudtrail-log-file-validation-digest-file-structure.md). 

 AWS CLI Le permite detectar los siguientes tipos de cambios:
+ Modificación o eliminación de archivos de CloudTrail registro
+ Modificación o eliminación de archivos de CloudTrail resumen
+ Modificación o eliminación de ambos tipos de archivo

**nota**  
 AWS CLI Valida únicamente los archivos de registro a los que hacen referencia los archivos de resumen. Para obtener más información, consulte [Comprobar si un archivo en particular fue entregado por CloudTrail](#cloudtrail-log-file-validation-cli-validate-logs-check-file).

## Requisitos previos
<a name="cloudtrail-log-file-validation-cli-prerequisites"></a>

Para validar la integridad del archivo de registro con el AWS CLI, se deben cumplir las siguientes condiciones:
+ Debe tener conectividad en línea para AWS.
+ Debe disponer de acceso de lectura al bucket de Amazon S3 que contiene los archivos de resumen y de registro. 
+ Los archivos de resumen y registro no deben haberse movido de la ubicación original de Amazon S3 en la que CloudTrail se entregaron.
+ El rol que ejecuta el comando debe tener permisos para llamar a `ListObjects`, `GetObject` y `GetBucketLocation` para cada bucket de S3 al que haga referencia el registro de seguimiento.

**nota**  
Los archivos de registro descargados al disco local no se pueden validar con la AWS CLI. Para obtener instrucciones sobre cómo crear sus propias herramientas para la validación, consulte [Implementaciones personalizadas de la validación de la integridad de los archivos de CloudTrail registro](cloudtrail-log-file-custom-validation.md).

## validate-logs
<a name="cloudtrail-log-file-validation-cli-validate-logs"></a>

### Sintaxis
<a name="cloudtrail-log-file-validation-cli-validate-logs-syntax"></a>

A continuación se presenta la sintaxis de `validate-logs`. Los parámetros opcionales se muestran entre corchetes.

`aws cloudtrail validate-logs --trail-arn <trailARN> --start-time <start-time> [--end-time <end-time>] [--s3-bucket <amzn-s3-demo-bucket>] [--s3-prefix <prefix>] [--account-id <account-id>] [--verbose]` 

**nota**  
El comando `validate-logs` es específico de la región. Debe especificar la opción `--region` global para validar los registros de una información específica Región de AWS.

### Opciones
<a name="cloudtrail-log-file-validation-cli-validate-logs-options"></a>

A continuación se enumeran las opciones de la línea de comandos para `validate-logs`. Las opciones `--trail-arn` y `--start-time` son obligatorias. La opción `--account-id` también es necesaria para los registros de seguimiento organizativos.

`--start-time`  
Especifica que se validarán los archivos de registro enviados en o después del valor de la marca temporal de inicio UTC especificada. Ejemplo: `2015-01-08T05:21:42Z`. 

`--end-time`  
De forma opcional, especifica que se validarán los archivos de registro enviados en o antes del valor de la marca temporal de inicio UTC especificada. El valor predeterminado es la hora UTC actual (`Date.now()`). Ejemplo: `2015-01-08T12:31:41Z`.   
Para el intervalo de tiempo especificado, el comando `validate-logs` verifica únicamente los archivos de registros a los que se hace referencia en los archivos de resumen correspondientes. No se verifica ningún otro archivo de registros en el bucket de Amazon S3. Para obtener más información, consulte [Comprobar si un archivo en particular fue entregado por CloudTrail](#cloudtrail-log-file-validation-cli-validate-logs-check-file). 

`--s3-bucket`  
De forma opcional, especifica el bucket de Amazon S3 donde se almacenan los archivos de resumen. Si no se especifica un nombre de depósito, lo AWS CLI recuperará mediante una llamada`DescribeTrails()`. 

`--s3-prefix`  
De forma opcional, especifica el prefijo de Amazon S3 donde se almacenan los archivos de resumen. Si no se especifica, lo AWS CLI recuperará mediante una llamada`DescribeTrails()`.   
Debe utilizar esta opción sólo si el prefijo actual es diferente del prefijo en uso durante el intervalo de tiempo especificado.

`--account-id`  
También se puede especificar la cuenta para validar los registros. Este parámetro es obligatorio en los registros de seguimiento de la organización para validar los registros de una cuenta específica dentro de una organización.

`--trail-arn`  
Especifica el nombre de recurso de Amazon (ARN) del registro de seguimiento a validar. El formato de un ARN de registro de seguimiento es como sigue.  

```
arn:aws:cloudtrail:us-east-2:111111111111:trail/MyTrailName
```
Para obtener el ARN de un registro de seguimiento, puede utilizar el comando `describe-trails` antes de ejecutar `validate-logs`.  
Se recomienda especificar el nombre del bucket y el prefijo además del ARN del registro de seguimiento si los archivos de registro se han enviado a más de un bucket en el intervalo de tiempo especificado, y si desea restringir la validación a los archivos de registro en tan solo uno de los buckets. 

`--verbose`  
De forma opcional, emite información de validación para cada archivo de resumen o de registro en el intervalo de tiempo especificado. El resultado indica si el archivo no ha cambiado, se ha modificado o se ha eliminado. En el modo no detallado (predeterminado), la información se muestra sólo para aquellos casos en los que se ha producido un error de validación. 

### Ejemplo
<a name="cloudtrail-log-file-validation-cli-validate-logs-example"></a>

En el siguiente ejemplo se validan archivos de registros desde la hora de inicio especificada hasta el momento actual, a través del bucket de Amazon S3 configurado para el registro de seguimiento actual y especificando resultados detallados.

```
aws cloudtrail validate-logs --start-time 2015-08-27T00:00:00Z --end-time 2015-08-28T00:00:00Z --trail-arn arn:aws:cloudtrail:us-east-2:111111111111:trail/my-trail-name --verbose
```

### Cómo funciona `validate-logs`
<a name="cloudtrail-log-file-validation-cli-validate-logs-how-it-works"></a>

El comando `validate-logs` empieza validando el archivo de resumen más reciente en el intervalo de tiempo especificado. En primer lugar, verifica que el archivo de resumen se haya descargado desde la ubicación a la que dice pertenecer. En otras palabras, si la CLI descarga el archivo de resumen `df1` desde la ubicación de S3 `p1`, validate-logs comprobará que `p1 == df1.digestS3Bucket + '/' + df1.digestS3Object`.

Si la firma del archivo de resumen es válida, verifica el valor hash de cada uno de los registros a los que se hace referencia en el archivo de resumen. A continuación, el comando va hacia atrás en el tiempo y valida los archivos de resumen anteriores y sus archivos de registro de referencia sucesivamente. Continúa así hasta llegar al valor especificado para `start-time` o hasta que finalice la cadena de resumen. Si falta un archivo de resumen o no es válido, el intervalo de tiempo que no se puede validar aparecerá en el resultado. El `validate-logs` comando opera primero en la cadena de resumen estándar. Tras completar la validación del compendio estándar, valida los archivos de compendio de relleno, si los hubiera. Los resúmenes de relleno forman una cadena de validación independiente y se procesan de forma independiente de los resúmenes estándar.

## Resultados de la validación
<a name="cloudtrail-log-file-validation-cli-results"></a>

Los resultados de la validación comienzan con un encabezado de resumen con el siguiente formato:

```
Validating log files for trail trail_ARN  between time_stamp and time_stamp
```

Cada línea del resultado principal contiene los resultados de la validación de un único resumen o archivo de registro en el siguiente formato. Las líneas con el prefijo `(backfill)` indican los archivos de resumen de relleno, que forman una cadena de validación independiente de los archivos de resumen estándar.

```
<optional (backfill)> <Digest file | Log file> <S3 path> <Validation Message>
```

En la siguiente tabla se describen los posibles mensajes de validación para los archivos de registro y de resumen.


****  

| Tipo de archivo | Mensaje de validación | Description (Descripción) | 
| --- | --- | --- | 
| Digest file | valid | La firma del archivo de resumen es válida. También se pueden verificar los archivos de registro a los que hace referencia. Este mensaje se incluirá solo en el modo detallado. | 
| Digest file | INVALID: has been moved from its original location | El bucket o el objeto de S3 desde el que se ha tomado el archivo de resumen no coincide con las ubicaciones del bucket o el objeto de S3 registradas en el propio archivo de resumen. | 
| Digest file | INVALID: invalid format | El formato del archivo de resumen no es válido. Los archivos de registro correspondientes al intervalo de tiempo que representa el archivo de resumen no se pueden validar. | 
| Digest file | INVALID: not found | No se ha encontrado el archivo de resumen. Los archivos de registro correspondientes al intervalo de tiempo que representa el archivo de resumen no se pueden validar. | 
| Digest file | INVALID: public key not found for fingerprint fingerprint | No se ha encontrado la clave pública correspondiente a la huella digital registrada en el archivo de resumen. El archivo de resumen no se puede validar. | 
| Digest file | INVALID: signature verification failed | La firma del archivo de resumen no es válida. Dado que el archivo de resumen no es válido, los archivos de registro a los que hace referencia no se pueden validar y no se pueden hacer afirmaciones sobre la actividad de la API en dichos archivos. | 
| Digest file | INVALID: Unable to load PKCS \$11 key with fingerprint fingerprint | Dado que no se ha podido cargar la clave pública codificada DER en formato PKCS \$11 que contiene la huella digital especificada, no se ha podido validar el archivo de resumen. | 
| Log file | valid | El archivo de registro se ha validado y no se ha modificado desde el momento del envío. Este mensaje se incluirá solo en el modo detallado. | 
| Log file | INVALID: hash value doesn't match | El hash para el archivo de registro no coincide. El archivo de registro se ha modificado después del envío de CloudTrail. | 
| Log file | INVALID: invalid format | El formato del archivo de registro no es válido. El archivo de registro no se puede validar. | 
| Log file | INVALID: not found | No se ha encontrado el archivo de registro y no se puede validar. | 

La salida incluye información resumida sobre los resultados emitidos.

## Ejemplos de resultados
<a name="cloudtrail-log-file-validation-cli-results-examples"></a>

### Detallado
<a name="cloudtrail-log-file-validation-cli-results-verbose"></a>

El siguiente comando `validate-logs` de ejemplo, usa el indicador `--verbose` y produce la salida de ejemplo que se indica a continuación. `[...]` indica que la salida de muestra se ha abreviado.

```
aws cloudtrail validate-logs --trail-arn arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name --start-time 2015-08-31T22:00:00Z --end-time 2015-09-01T19:17:29Z --verbose
```

```
Validating log files for trail arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name between 2015-08-31T22:00:00Z and 2015-09-01T19:17:29Z
                                       
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2015/09/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T201728Z.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1925Z_WZZw1RymnjCRjxXc.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1915Z_POuvV87nu6pfAV2W.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1930Z_l2QgXhAKVm1QXiIA.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1920Z_eQJteBBrfpBCqOqw.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1950Z_9g5A6qlR2B5KaRdq.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1920Z_i4DNCC12BuXd6Ru7.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1915Z_Sg5caf2RH6Jdx0EJ.json.gz	valid
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2015/09/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T191728Z.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1910Z_YYSFiuFQk4nrtnEW.json.gz	valid
[...]
Log file       s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2015/09/01/144218288521_CloudTrail_us-east-2_20150901T1055Z_0Sfy6m9f6iBzmoPF.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2015/09/01/144218288521_CloudTrail_us-east-2_20150901T1040Z_lLa3QzVLpOed7igR.json.gz	valid

Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T101728Z.json.gz	INVALID: signature verification failed

Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T091728Z.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2015/09/01/144218288521_CloudTrail_us-east-2_20150901T0830Z_eaFvO3dwHo4NCqqc.json.gz	valid
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T081728Z.json.gz	valid
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T071728Z.json.gz	valid
[...]
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2245Z_mbJkEO5kNcDnVhGh.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2225Z_IQ6kXy8sKU03RSPr.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2230Z_eRPVRTxHQ5498ROA.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2255Z_IlWawYZGvTWB5vYN.json.gz	valid
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2015/08/31/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150831T221728Z.json.gz	valid

Results requested for 2015-08-31T22:00:00Z to 2015-09-01T19:17:29Z
Results found for 2015-08-31T22:17:28Z to 2015-09-01T20:17:28Z:

22/23 digest files valid, 1/23 digest files INVALID
63/63 log files valid
```

El siguiente `validate-logs` comando de ejemplo usa la `--verbose` marca en un período en el que hay archivos de resumen de relleno y produce el siguiente resultado de ejemplo. Los resúmenes de relleno aparecen con el `(backfill)` prefijo y se validan por separado de la cadena de resúmenes estándar. `[...]`indica que el resultado de la muestra se ha abreviado.

```
aws cloudtrail validate-logs --trail-arn arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name --start-time 2024-07-31T22:00:00Z --end-time 2024-08-01T19:17:29Z --verbose
```

```
Validating log files for trail arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name between 2024-07-31T22:00:00Z and 2024-08-01T19:17:29Z

Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2024/08/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T201728Z.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1925Z_Xm3pK9vN2wQ5rT8h.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1915Z_Bj7cL4nM6pR9sU2v.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1930Z_Fy1dG8kN3qT6wX0z.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1920Z_Hn5jM2pQ7sV9yB4e.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1950Z_Kp8rN1tW4xZ7aC3f.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1920Z_Mq6sP9uX2yB5dE8g.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1915Z_Rt4vQ7wZ0aC3fG6h.json.gz	valid
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2024/08/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T191728Z.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/08/01/111111111111_CloudTrail_us-east-2_20240801T1910Z_Uw9xR2yB5dH8jK1m.json.gz	valid
[...]
Log file       s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2024/08/01/144218288521_CloudTrail_us-east-2_20240801T1055Z_Vz3aS6cE9fL2nP5q.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2024/08/01/144218288521_CloudTrail_us-east-2_20240801T1040Z_Xy7bT0dG3hM6pR9s.json.gz	valid

Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T101728Z.json.gz	INVALID: signature verification failed

Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T091728Z.json.gz	valid
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T081728Z.json.gz	valid
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T071728Z.json.gz	valid
[...]
Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2024/07/31/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240731T221728Z.json.gz	valid
(backfill) Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2024/08/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T201728Z_backfill.json.gz	valid
(backfill) Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2024/08/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T191728Z_backfill.json.gz	valid
[...]

(backfill) Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T101728Z_backfill.json.gz	INVALID: signature verification failed

(backfill) Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T091728Z_backfill.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2024/08/01/144218288521_CloudTrail_us-east-2_20240801T0830Z_Rn6uk0wY5aD9fJ3n.json.gz	valid
(backfill) Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T081728Z_backfill.json.gz	valid
(backfill) Digest file    s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T071728Z_backfill.json.gz	valid
[...]
(backfill) Digest file    s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2024/07/31/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240731T221728Z_backfill.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/07/31/111111111111_CloudTrail_us-east-2_20240731T2145Z_Sp3vm7xZ2bE6gK0p.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/07/31/111111111111_CloudTrail_us-east-2_20240731T2125Z_Tq0wn4ya9cF3hL7q.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/07/31/111111111111_CloudTrail_us-east-2_20240731T2130Z_Ur7xp1zb6dG0jM4r.json.gz	valid
Log file       s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2024/07/31/111111111111_CloudTrail_us-east-2_20240731T2155Z_Vs4yq8ac3eH7kN1s.json.gz	valid

Results requested for 2024-07-31T22:00:00Z to 2024-08-01T19:17:29Z
Results found for 2024-07-31T22:17:28Z to 2024-08-01T20:17:28Z:

22/23 digest files valid, 1/23 digest files INVALID
22/23 backfill digest files valid, 1/23 backfill digest files INVALID
63/63 log files valid
```

### No detallado
<a name="cloudtrail-log-file-validation-cli-results-non-verbose"></a>

El siguiente comando `validate-logs` de ejemplo no utiliza el indicador `--verbose`. En el resultado de ejemplo que sigue ha surgido un error. Solo devuelve la información del encabezado, de error y de resumen.

```
aws cloudtrail validate-logs --trail-arn arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name --start-time 2015-08-31T22:00:00Z --end-time 2015-09-01T19:17:29Z
```

```
Validating log files for trail arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name between 2015-08-31T22:00:00Z and 2015-09-01T19:17:29Z

Digest file	s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T101728Z.json.gz	INVALID: signature verification failed

(backfill) Digest file	s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2024/08/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20240801T101728Z_backfill.json.gz	INVALID: signature verification failed

Results requested for 2015-08-31T22:00:00Z to 2015-09-01T19:17:29Z
Results found for 2015-08-31T22:17:28Z to 2015-09-01T20:17:28Z:

22/23 digest files valid, 1/23 digest files INVALID
22/23 backfill digest files valid, 1/23 backfill digest files INVALID
63/63 log files valid
```

## Comprobar si un archivo en particular fue entregado por CloudTrail
<a name="cloudtrail-log-file-validation-cli-validate-logs-check-file"></a>

Para comprobar si un archivo concreto de su depósito fue entregado por CloudTrail, ejecútelo `validate-logs` en modo detallado durante el período de tiempo que incluye el archivo. Si el archivo aparece en la salida de`validate-logs`, significa que lo entregó. CloudTrail