

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.

# Cifrado de archivos de CloudTrail registro, archivos de resumen y almacenes de datos de eventos con AWS KMS claves (SSE-KMS)
<a name="encrypting-cloudtrail-log-files-with-aws-kms"></a>

De forma predeterminada, los archivos de registro y los archivos de resumen CloudTrail que entrega el bucket se cifran mediante el [cifrado del lado del servidor con una clave KMS (SSE-KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)). Si no habilita el cifrado SSE-KMS, los archivos de registro y de resumen se cifrarán mediante el [cifrado SSE-S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html).

**nota**  
Si utilizas un bucket de S3 existente con una [clave de bucket de S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), CloudTrail debes tener permiso en la política de claves para usar las acciones y. AWS KMS `GenerateDataKey` `DescribeKey` Si `cloudtrail.amazonaws.com` no tiene estos permisos en la política de claves, no se puede crear ni actualizar un registro de seguimiento.

Para usar SSE-KMS con CloudTrail, debe crear y administrar un. [AWS KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) Adjunta una política a la clave que determina qué usuarios pueden utilizarla para cifrar y descifrar los archivos de CloudTrail registro y los archivos de resumen. El proceso de descifrado transcurre de manera fluida a través de S3. Cuando los usuarios autorizados de la clave leen los archivos de CloudTrail registro o los archivos de resumen, S3 gestiona el descifrado y los usuarios autorizados pueden leer los archivos sin cifrar.

Este enfoque tiene las siguientes ventajas:
+ Puede crear y administrar la clave de KMS usted mismo.
+ Puede utilizar una única clave de KMS para cifrar y descifrar los archivos de registros y de resumen de varias cuentas en todas las regiones.
+ Usted controla quién puede usar su clave para cifrar y descifrar los archivos de CloudTrail registro y los archivos de resumen. Puede asignar permisos para la clave a los usuarios de su organización, según sus requisitos.
+ Aumenta la seguridad. Con esta característica, se necesitan los siguientes permisos para poder leer archivos de registros y de resumen:
  + Un usuario debe tener permisos de lectura de S3 para el bucket que contiene los archivos de registro y de resumen.
  + También se debe aplicar a un usuario una política o un rol que la política de la clave de KMS conceda permisos de descifrado.
+ Como S3 descifra automáticamente los archivos de registro y los archivos de resumen para las solicitudes de los usuarios autorizados a usar la clave KMS, el cifrado SSE-KMS de los archivos es compatible con versiones anteriores de las aplicaciones que leen datos de registro. CloudTrail 

**nota**  
La clave de KMS que elija debe crearse en la misma AWS región que el bucket de Amazon S3 que recibe los archivos de registro y los archivos de resumen. Por ejemplo, si los archivos de registros y de registro se almacenarán en un bucket en la región Este de EE. UU. (Ohio), debe crear o elegir una clave de KMS que se haya creado en esa región. Para verificar la región a la que pertenece un bucket de Amazon S3, consulte sus propiedades en la consola de Amazon S3.

De forma predeterminada, los almacenes de datos de eventos se cifran con CloudTrail. Tiene la opción de usar su propia clave de KMS para el cifrado al crear o actualizar un almacén de datos de eventos.

## Activación del cifrado de los archivos de registro
<a name="encrypting-cloudtrail-log-files-with-aws-kms-enabling"></a>

**nota**  
Si crea una clave de KMS en la CloudTrail consola, CloudTrail añade automáticamente las secciones de política de claves de KMS necesarias. Siga estos procedimientos si ha creado una clave en la consola de IAM o AWS CLI si necesita añadir manualmente las secciones de política necesarias.

Para habilitar el cifrado SSE-KMS para los archivos de CloudTrail registro, lleve a cabo los siguientes pasos generales:

1. Creación de una clave de KMS.
   + Para obtener información sobre cómo crear una clave KMS con Consola de administración de AWS, consulte [Creación de claves](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) en la Guía para *AWS Key Management Service desarrolladores*. 
   + Para obtener información sobre cómo crear una clave KMS con AWS CLI, consulte [create-key](https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html).
**nota**  
La clave de KMS que elija debe estar en la misma región que el bucket de S3 que recibe los archivos de registros y de resumen. Para verificar la región a la que pertenece un bucket de S3, inspecciones las propiedades del bucket en la consola de S3. 

1. Agregue secciones de políticas a la clave que permitan cifrar y CloudTrail a los usuarios descifrar los archivos de registro y los archivos de resumen. 
   + Para obtener información sobre qué es lo que debe incluir en la política, consulte [Configurar políticas AWS KMS clave para CloudTrail](create-kms-key-policy-for-cloudtrail.md).
**aviso**  
Asegúrese de incluir permisos de descifrado en la política para todos los usuarios que necesitan leer archivos de registro y de resumen. Si no realiza este paso antes de añadir la clave a la configuración del registro de seguimiento, los usuarios que no dispongan de permisos de descifrado no podrán leer archivos cifrados hasta que les conceda esos permisos.
   + Para obtener más información sobre cómo editar una política con la consola de IAM, consulte [Edición de una política de claves](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) en la *Guía para desarrolladores AWS Key Management Service *.
   + Para obtener información sobre cómo adjuntar una política a una clave de KMS con el AWS CLI, consulte. [put-key-policy](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html)

1. Actualice el banco de datos de rutas o eventos para usar la clave de KMS cuya política modificó. CloudTrail
   + Para actualizar un banco de datos de senderos o eventos mediante la CloudTrail consola, consulte[Actualización de un recurso para que utilice su clave de KMS con la consola](create-kms-key-policy-for-cloudtrail-update-trail.md).
   + Para actualizar un banco de datos de senderos o eventos mediante el AWS CLI, consulte[Activación y desactivación del cifrado de archivos de CloudTrail registro, archivos de resumen y almacenes de datos de eventos con AWS CLI](cloudtrail-log-file-encryption-cli.md).

CloudTrail también admite claves AWS KMS multirregionales. Para obtener más información sobre las claves de varias regiones, consulte [Uso de claves de varias regiones](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) en la *Guía para desarrolladores de AWS Key Management Service *.

En la siguiente sección, se describen las secciones de política con CloudTrail las que debe utilizarse su política de claves de KMS.

# Conceder permisos para crear una clave de KMS
<a name="granting-kms-permissions"></a>

Puede conceder a los usuarios permiso para crear una AWS KMS key con la [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSKeyManagementServicePowerUser.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSKeyManagementServicePowerUser.html)política.

**Para conceder permiso para crear una clave de KMS**

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Elija el usuario o grupo al que desea conceder permiso.

1. Elija la pestaña **Permisos**.

1.  En la lista **Agregar permisos**, seleccione **Asociar políticas**. 

1. Busque **AWSKeyManagementServicePowerUser**, elija la política y después elija **Asociar políticas**. 

   El usuario ahora tiene permiso para crear una clave de KMS. Para obtener más información acerca de la creación de políticas, consulte [Creación de políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la *Guía del usuario de IAM*.

# Configurar políticas AWS KMS clave para CloudTrail
<a name="create-kms-key-policy-for-cloudtrail"></a>

Puede crear una AWS KMS key de tres maneras:
+ La CloudTrail consola
+ La consola AWS de administración
+ La AWS CLI

**nota**  
Si crea una clave de KMS en la CloudTrail consola, CloudTrail le agrega la política de claves de KMS necesaria. No es necesario que añada manualmente las instrucciones de política. Consulte [Política de claves de KMS predeterminada creada en la consola CloudTrail](default-kms-key-policy.md).

Si crea una clave de KMS en la Consola de administración de AWS o en AWS CLI, debe añadir secciones de políticas a la clave para poder utilizarla con ella CloudTrail. La política debe permitir CloudTrail el uso de la clave para cifrar los archivos de registro, los archivos de resumen y los almacenes de datos de eventos, y permitir que los usuarios que especifique lean los archivos de registro y los archivos de resumen sin cifrar.

Consulte los siguientes recursos:
+ [Para crear una clave KMS con AWS CLI, consulte create-key.](https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html) 
+ Para editar una política de claves de KMS CloudTrail, consulte [Edición de una política de claves](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) en la Guía para *AWS Key Management Service desarrolladores*.
+ Para obtener información técnica sobre cómo se CloudTrail usa AWS KMS, consulte[Cómo AWS CloudTrail usa AWS KMS](how-kms-works-with-cloudtrail.md).

**Topics**
+ [Secciones clave de la política de KMS obligatorias para su uso con CloudTrail](#create-kms-key-policy-for-cloudtrail-policy-sections)
+ [Otorgar permisos de cifrado para los registros de seguimiento](#create-kms-key-policy-for-cloudtrail-encrypt)
+ [Otorgar permisos de cifrado para los almacenes de datos de eventos](#create-kms-key-policy-for-cloudtrail-encrypt-eds)
+ [Otorgar permisos de descifrado para los registros de seguimiento](#create-kms-key-policy-for-cloudtrail-decrypt)
+ [Otorgar permisos de descifrado para los almacenes de datos de eventos](#create-kms-key-policy-for-cloudtrail-decrypt-eds)
+ [Habilite esta opción CloudTrail para describir las propiedades clave de KMS](#create-kms-key-policy-for-cloudtrail-describe)
+ [Política de claves de KMS predeterminada creada en la consola CloudTrail](default-kms-key-policy.md)

## Secciones clave de la política de KMS obligatorias para su uso con CloudTrail
<a name="create-kms-key-policy-for-cloudtrail-policy-sections"></a>

Si ha creado una clave de KMS con la consola de AWS administración o la AWS CLI, debe añadir, como mínimo, las siguientes instrucciones a su política de claves de KMS para que funcione CloudTrail.

**Topics**
+ [Elementos de política de clave de KMS necesarios para los registros de seguimiento](#required-kms-key-policy-trails)
+ [Elementos de política de clave de KMS necesarios para los almacenes de datos de eventos](#required-kms-key-policy-eventdatastores)

### Elementos de política de clave de KMS necesarios para los registros de seguimiento
<a name="required-kms-key-policy-trails"></a>

1. Conceda permisos para cifrar los archivos de CloudTrail registro y resumen. Para obtener más información, consulte [Otorgar permisos de cifrado para los registros de seguimiento](#create-kms-key-policy-for-cloudtrail-encrypt).

1. Otorgue permisos para descifrar los archivos de CloudTrail registro y resumen. Para obtener más información, consulte [Otorgar permisos de descifrado para los registros de seguimiento](#create-kms-key-policy-for-cloudtrail-decrypt). Si está utilizando un bucket de S3 existente con una [Clave de bucket de S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), los permisos `kms:Decrypt` son necesarios para crear o actualizar un registro de seguimiento con el cifrado SSE-KMS habilitado.

1.  CloudTrail Actívela para describir las propiedades clave de KMS. Para obtener más información, consulte [Habilite esta opción CloudTrail para describir las propiedades clave de KMS](#create-kms-key-policy-for-cloudtrail-describe).

Como práctica recomendada de seguridad, agregue una clave de condición `aws:SourceArn` a la política de claves de KMS. La clave de condición global del IAM `aws:SourceArn` ayuda a garantizar que se CloudTrail utilice la clave KMS solo para una o varias rutas específicas. El valor de `aws:SourceArn` es siempre el ARN de la ruta (o matriz de rutas ARNs) que utiliza la clave KMS. Asegúrese de agregar la clave de condiciones `aws:SourceArn` de las políticas clave de KMS para las trazas existentes.

La clave de condición `aws:SourceAccount` también se admite, aunque no se recomienda. El valor de `aws:SourceAccount` es el ID de cuenta del propietario del traza, para las trazas de la organización, el ID de cuenta de administración.

**importante**  
Cuando agregue las secciones nuevas a su política de clave de KMS, no cambie las secciones existentes en la política.  
Si el cifrado está habilitado en un rastro y la clave de KMS está deshabilitada o la política de claves de KMS no está configurada correctamente CloudTrail, no CloudTrail se pueden entregar los registros.

### Elementos de política de clave de KMS necesarios para los almacenes de datos de eventos
<a name="required-kms-key-policy-eventdatastores"></a>

1. Otorgue permisos para cifrar un almacén de datos de eventos de CloudTrail Lake. Para obtener más información, consulte [Otorgar permisos de cifrado para los almacenes de datos de eventos](#create-kms-key-policy-for-cloudtrail-encrypt-eds).

1. Otorgue permisos para descifrar un banco de datos de eventos de CloudTrail Lake. Para obtener más información, consulte [Otorgar permisos de descifrado para los almacenes de datos de eventos](#create-kms-key-policy-for-cloudtrail-decrypt-eds).

   Tanto para crear un almacén de datos de eventos y cifrarlo con una clave de KMS como para ejecutar consultas en un almacén de datos de eventos que esté cifrando con una clave de KMS, debe tener acceso de escritura a la clave de KMS. La política de claves de KMS debe tener acceso al CloudTrail almacén de datos de eventos y los usuarios que ejecutan operaciones (como consultas) en el almacén de datos de eventos deben poder administrarla.

1.  CloudTrail Actívela para describir las propiedades clave de KMS. Para obtener más información, consulte [Habilite esta opción CloudTrail para describir las propiedades clave de KMS](#create-kms-key-policy-for-cloudtrail-describe).

Las claves de condición `aws:SourceArn` y `aws:SourceAccount` no se admiten en las políticas de claves de KMS para los almacenes de datos de eventos.

**importante**  
Cuando agregue las secciones nuevas a su política de clave de KMS, no cambie las secciones existentes en la política.  
Si el cifrado está habilitado en un almacén de datos de eventos y la clave de KMS está deshabilitada o eliminada, o si la política de claves de KMS no está configurada correctamente CloudTrail, CloudTrail no podrá entregar eventos a su banco de datos de eventos.

## Otorgar permisos de cifrado para los registros de seguimiento
<a name="create-kms-key-policy-for-cloudtrail-encrypt"></a>

**Example Permite CloudTrail cifrar archivos de registro y archivos de resumen en nombre de cuentas específicas**  
CloudTrail necesita un permiso explícito para usar la clave KMS para cifrar los archivos de registro y los archivos de resumen en nombre de cuentas específicas. Para especificar una cuenta, añada la siguiente declaración obligatoria a su política de claves de KMS y *account-id* sustitúyala *trailName* por los valores adecuados para su configuración. *region* Puede añadir una cuenta adicional IDs a la `EncryptionContext` sección para permitir que esas cuentas usen su clave KMS CloudTrail para cifrar los archivos de registro y los archivos de resumen.  
Como práctica recomendada de seguridad, agregue una clave de condición `aws:SourceArn` a la política de clave de KMS para un registro de seguimiento. La clave de condición global de IAM `aws:SourceArn` ayuda a garantizar que se CloudTrail utilice la clave KMS solo para una o varias rutas específicas.

```
{
   "Sid": "AllowCloudTrailEncryptLogs",
   "Effect": "Allow",
   "Principal": {
       "Service": "cloudtrail.amazonaws.com"
    },
    "Action": "kms:GenerateDataKey*",
    "Resource": "*",
    "Condition": {
        "StringEquals": {
            "aws:SourceArn": "arn:aws:cloudtrail:region:account-id:trail/trail-name"
         },
         "StringLike": {
             "kms:EncryptionContext:aws:cloudtrail:arn": "arn:aws:cloudtrail:*:account-id:trail/*"
         }
    }
}
```

**Example**  
El siguiente ejemplo de declaración de política ilustra cómo otra cuenta puede usar tu clave KMS para cifrar los archivos de CloudTrail registro y resumir los archivos.

**Escenario**
+ Su clave de KMS está en la cuenta *111111111111*.
+ Tanto usted como la cuenta *222222222222* cifrarán los registros.

En la política, agregas una o más cuentas que se cifran con tu clave. CloudTrail **EncryptionContext** Esto limita el uso de CloudTrail la clave para cifrar los archivos de registro y resumir los archivos únicamente de las cuentas que especifique. Cuando concedes *222222222222* permiso al administrador de la cuenta para cifrar los archivos de registro y los archivos de resumen, delega en el administrador de la cuenta el permiso para cifrar los permisos necesarios a otros usuarios de esa cuenta. Para ello, el administrador de la cuenta cambia las políticas asociadas a esos usuarios de IAM.

Como práctica recomendada de seguridad, agregue una clave de condición `aws:SourceArn` a la política de claves de KMS. La clave de condición global de IAM `aws:SourceArn` ayuda a garantizar que se CloudTrail utilice la clave KMS solo para las rutas especificadas. Esta condición no se admite en las políticas de claves de KMS para los almacenes de datos de eventos.

Instrucción de la política de claves de KMS:

```
{
  "Sid": "EnableCloudTrailEncryptPermissions",
  "Effect": "Allow",
  "Principal": {
    "Service": "cloudtrail.amazonaws.com"
  },
  "Action": "kms:GenerateDataKey*",
  "Resource": "*",
  "Condition": {
    "StringLike": {
      "kms:EncryptionContext:aws:cloudtrail:arn": [
        "arn:aws:cloudtrail:*:111111111111:trail/*",
        "arn:aws:cloudtrail:*:222222222222:trail/*"
      ]
    },
    "StringEquals": {
        "aws:SourceArn": "arn:aws:cloudtrail:region:account-id:trail/trail-name"
    }
  }
}
```

Para obtener más información sobre cómo editar una política de claves de KMS para usarla con CloudTrail ella, consulte [Edición de una política clave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) en la Guía para AWS Key Management Service desarrolladores.

## Otorgar permisos de cifrado para los almacenes de datos de eventos
<a name="create-kms-key-policy-for-cloudtrail-encrypt-eds"></a>

Una política para una clave de KMS utilizada para cifrar un banco de datos de eventos de CloudTrail Lake no puede usar las claves de condición `aws:SourceArn` o`aws:SourceAccount`. A continuación, se muestra un ejemplo de política de una clave de KMS para un almacén de datos de eventos.

```
{
    "Sid": "AllowCloudTrailEncryptEds",
    "Effect": "Allow",
    "Principal": {
        "Service": "cloudtrail.amazonaws.com"
     },
     "Action": [
        "kms:GenerateDataKey",
        "kms:Decrypt"
      ],
      "Resource": "*"
}
```

## Otorgar permisos de descifrado para los registros de seguimiento
<a name="create-kms-key-policy-for-cloudtrail-decrypt"></a>

Antes de añadir la clave KMS a la CloudTrail configuración, es importante conceder permisos de descifrado a todos los usuarios que los necesiten. Los usuarios que tienen permisos de cifrado, pero no permisos de descifrado no pueden leer los registros cifrados. Si está utilizando un bucket de S3 existente con una [Clave de bucket de S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), los permisos `kms:Decrypt` son necesarios para crear o actualizar un registro de seguimiento con el cifrado SSE-KMS habilitado.

**Habilite los permisos de descifrado de CloudTrail registros**  
Los usuarios de su clave deben tener permisos explícitos para leer los archivos de registro que CloudTrail ha cifrado. Para habilitar a los usuarios para que puedan leer archivos de registros cifrados, agregue la siguiente instrucción necesaria a su política de claves de KMS y modifique la sección `Principal` para agregar una línea para cada entidad principal a la que desee permitir descifrar con su clave de KMS.

```
{
  "Sid": "EnableCloudTrailLogDecryptPermissions",
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::account-id:user/username"
  },
  "Action": "kms:Decrypt",
  "Resource": "*",
  "Condition": {
    "Null": {
      "kms:EncryptionContext:aws:cloudtrail:arn": "false"
    }
  }
}
```

El siguiente es un ejemplo de política que se requiere para permitir que el director del CloudTrail servicio descifre los registros de seguimiento.

```
{
      "Sid": "AllowCloudTrailDecryptTrail",
      "Effect": "Allow",
      "Principal": {
          "Service": "cloudtrail.amazonaws.com"
        },
      "Action": "kms:Decrypt",
      "Resource": "*"
}
```

### Permitir a los usuarios de su cuenta descifrar los registros de seguimiento con su clave de KMS
<a name="create-kms-key-policy-for-cloudtrail-decrypt-your-account"></a>

**Ejemplo**  
Esta instrucción de política ilustra cómo permitir que un usuario o un rol de su cuenta use su clave para leer registros cifrados en el bucket de S3 de su cuenta.

**Example Escenario**  
+ Su clave de KMS, el bucket de S3 y el usuario de IAM Bob están en la cuenta `111111111111`.
+ Le das permiso al usuario de IAM Bob para descifrar los CloudTrail registros del bucket de S3.

En la política de claves, habilita los permisos de descifrado de CloudTrail registros para el usuario Bob de IAM.

Instrucción de la política de claves de KMS:

```
{
  "Sid": "EnableCloudTrailLogDecryptPermissions",
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::111111111111:user/Bob"
  },
  "Action": "kms:Decrypt",
  "Resource": "arn:aws:kms:region:account-id:key/key-id",
  "Condition": {
    "Null": {
      "kms:EncryptionContext:aws:cloudtrail:arn": "false"
    }
  }
}
```

**Topics**

### Permitir a los usuarios de otras cuentas descifrar los registros de seguimiento con su clave de KMS
<a name="create-kms-key-policy-for-cloudtrail-decrypt-other-accounts"></a>

Puede permitir que los usuarios de otras cuentas utilicen su clave de KMS para descifrar registros del registro de seguimiento. Los cambios necesarios en su política de claves dependen de si el bucket de S3 se encuentra en su cuenta o en otra cuenta.

#### Permitir a los usuarios de un bucket de otra cuenta descifrar archivos de registro
<a name="create-kms-key-policy-for-cloudtrail-decrypt-different-bucket"></a>

**Ejemplo**  
Esta instrucción de política ilustra cómo permitir que un usuario o un rol de IAM de otra cuenta use su clave para leer archivos de registro cifrados de un bucket de S3 de la otra cuenta.

**Escenario**
+ Su clave de KMS está en la cuenta `111111111111`.
+ El usuario de IAM Alice y el bucket de S3 se encuentran en la cuenta `222222222222`.

En este caso, usted CloudTrail autoriza a descifrar los registros de la cuenta `222222222222` y autoriza a la política de usuario de IAM de Alice a utilizar su clave`KeyA`, que está en la cuenta. `111111111111` 

Instrucción de la política de claves de KMS:

```
{
  "Sid": "EnableEncryptedCloudTrailLogReadAccess",
  "Effect": "Allow",
  "Principal": {
    "AWS": [
      "arn:aws:iam::222222222222:root"
    ]
  },
  "Action": "kms:Decrypt",
  "Resource": "arn:aws:kms:region:111111111111:key/key-id",
  "Condition": {
    "Null": {
      "kms:EncryptionContext:aws:cloudtrail:arn": "false"
    }
  }
}
```

Instrucción de política de la usuaria de IAM Alice:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "kms:Decrypt",
      "Resource": "arn:aws:kms:us-west-2:111111111111:key/KeyA"
    }
  ]
}
```

------

#### Permitir a los usuarios de otra cuenta descifrar los registros de seguimiento de su bucket
<a name="create-kms-key-policy-for-cloudtrail-decrypt-same-bucket"></a>

**Example**  
Esta política ilustra cómo otra cuenta puede utilizar su clave para leer archivos de registro cifrados de su bucket de S3.

**Example Escenario**  
+ Su clave de KMS y el bucket de S3 se encuentran en la cuenta `111111111111`.
+ El usuario que lee registros del bucket está en la cuenta `222222222222`.

Para habilitar este escenario, habilita los permisos de descifrado para la función de IAM **CloudTrailReadRole**en su cuenta y, a continuación, otorga permiso a la otra cuenta para que asuma esa función.

Instrucción de la política de claves de KMS:

```
{
  "Sid": "EnableEncryptedCloudTrailLogReadAccess",
  "Effect": "Allow",
  "Principal": {
    "AWS": [
      "arn:aws:iam::111111111111:role/CloudTrailReadRole"
    ]
  },
  "Action": "kms:Decrypt",
  "Resource": "arn:aws:kms:region:account-id:key/key-id",
  "Condition": {
    "Null": {
      "kms:EncryptionContext:aws:cloudtrail:arn": "false"
    }
  }
}
```

**CloudTrailReadRole**declaración de política de la entidad fiduciaria:

------
#### [ JSON ]

****  

```
{
 "Version":"2012-10-17",		 	 	 
 "Statement": [
   {
     "Sid": "Allow CloudTrail access",
     "Effect": "Allow",
     "Principal": {
       "AWS": "arn:aws:iam::222222222222:root"
     },
     "Action": "sts:AssumeRole"
    }
  ]
 }
```

------

Para obtener información sobre cómo editar una política de claves de KMS para usarla con CloudTrail ella, consulte [Edición de una política clave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) en la *Guía para AWS Key Management Service desarrolladores*.

## Otorgar permisos de descifrado para los almacenes de datos de eventos
<a name="create-kms-key-policy-for-cloudtrail-decrypt-eds"></a>

La política de descifrado de una clave de KMS que se utiliza con un banco de datos de eventos de CloudTrail Lake es similar a la siguiente. El usuario o el rol ARNs especificados como valores `Principal` necesitan permisos de descifrado para crear o actualizar los bancos de datos de eventos, ejecutar consultas u obtener resultados de consultas.

```
{
      "Sid": "EnableUserKeyPermissionsEds"
      "Effect": "Allow",
      "Principal": {
          "AWS": "arn:aws:iam::account-id:user/username"
      },
      "Action": [
          "kms:Decrypt",
          "kms:GenerateDataKey"
      ],
      "Resource": "*"
  }
```

El siguiente es un ejemplo de política que se requiere para permitir que el director del CloudTrail servicio descifre un banco de datos de eventos.

```
{
      "Sid": "AllowCloudTrailDecryptEds",
      "Effect": "Allow",
      "Principal": {
          "Service": "cloudtrail.amazonaws.com"
        },
      "Action": "kms:Decrypt",
      "Resource": "*"
}
```

## Habilite esta opción CloudTrail para describir las propiedades clave de KMS
<a name="create-kms-key-policy-for-cloudtrail-describe"></a>

CloudTrail requiere la capacidad de describir las propiedades de la clave KMS. Para habilitar esta funcionalidad, agregue la siguiente instrucción necesaria tal cual está a su política de claves de KMS. Esta declaración no concede CloudTrail ningún permiso aparte de los demás permisos que especifique. 

Como práctica recomendada de seguridad, agregue una clave de condición `aws:SourceArn` a la política de claves de KMS. La clave de condición global de IAM `aws:SourceArn` ayuda a garantizar que se CloudTrail utilice la clave KMS solo para una o varias rutas específicas.

```
{
  "Sid": "AllowCloudTrailAccess",
  "Effect": "Allow",
  "Principal": {
    "Service": "cloudtrail.amazonaws.com"
  },
  "Action": "kms:DescribeKey",
  "Resource": "arn:aws:kms:region:account-id:key/key-id",
  "Condition": {
    "StringEquals": {
        "aws:SourceArn": "arn:aws:cloudtrail:region:account-id:trail/trail-name"
    }
  }
}
```

Para obtener más información sobre cómo editar políticas de claves de KMS, consulte [Edición de una política de claves](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) en la * Guía para desarrolladores de AWS Key Management Service *.

# Política de claves de KMS predeterminada creada en la consola CloudTrail
<a name="default-kms-key-policy"></a>

Si crea una AWS KMS key en la CloudTrail consola, se crean automáticamente las siguientes políticas. La política concede estos permisos:
+ Permite permisos Cuenta de AWS (root) para la clave KMS.
+ Permite cifrar CloudTrail los archivos de registro y los archivos de resumen de la clave KMS y describir la clave KMS.
+ Permite que todos los usuarios de las cuentas especificadas descifren archivos de registro y de resumen.
+ Permite que todos los usuarios de la cuenta especificada creen un alias de KMS para la clave de KMS.
+ Habilita el descifrado de registros entre cuentas para el ID de la cuenta que creó el registro de seguimiento. 

**Topics**
+ [Política de clave de KMS predeterminada para registros de seguimiento](#default-kms-key-policy-trail)
+ [Política de claves de KMS predeterminada para los almacenes de datos de eventos de CloudTrail Lake](#default-kms-key-policy-eds)

## Política de clave de KMS predeterminada para registros de seguimiento
<a name="default-kms-key-policy-trail"></a>

La siguiente es la política predeterminada que se crea para una AWS KMS key que se usa con una ruta.

**nota**  
La política incluye una instrucción por la que se permite descifrar archivos de registro y de resumen entre cuentas con la clave de KMS.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "Key policy created by CloudTrail",
    "Statement": [
        {
            "Sid": "Enable IAM user permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111111111111:root",
                    "arn:aws:iam::111111111111:user/username"
                ]
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "Allow CloudTrail to encrypt logs",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudtrail.amazonaws.com"
             },
            "Action": "kms:GenerateDataKey*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceArn": "arn:aws:cloudtrail:us-east-1:111111111111:trail/trail-name"
                },
                "StringLike": {
                    "kms:EncryptionContext:aws:cloudtrail:arn": "arn:aws:cloudtrail:*:111111111111:trail/*"
                }
            }
        },
        {
            "Sid": "Allow CloudTrail to describe key",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudtrail.amazonaws.com"
             },
            "Action": "kms:DescribeKey",
            "Resource": "*"
        },
        {
            "Sid": "Allow principals in the account to decrypt log files",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
             },
            "Action": [
                "kms:Decrypt",
                "kms:ReEncryptFrom"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "111111111111"
                },
                "StringLike": {
                    "kms:EncryptionContext:aws:cloudtrail:arn": "arn:aws:cloudtrail:*:111111111111:trail/*"
                }
            }
        },
        {
            "Sid": "Enable cross account log decryption",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "kms:Decrypt",
                "kms:ReEncryptFrom"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "kms:CallerAccount": "111111111111"
                },
                "StringLike": {
                    "kms:EncryptionContext:aws:cloudtrail:arn": "arn:aws:cloudtrail:*:111111111111:trail/*"
                }
            }
        }
    ]
}
```

------

## Política de claves de KMS predeterminada para los almacenes de datos de eventos de CloudTrail Lake
<a name="default-kms-key-policy-eds"></a>

La siguiente es la política predeterminada que se crea para una AWS KMS key que se usa con un almacén de datos de eventos en CloudTrail Lake.

------
#### [ JSON ]

****  

```
{
      "Version":"2012-10-17",		 	 	 
      "Id": "Key policy created by CloudTrail",
      "Statement": [
        {
          "Sid": "The key created by CloudTrail to encrypt event data stores. Created ${new Date().toUTCString()}",
          "Effect": "Allow",
          "Principal": {
            "Service": "cloudtrail.amazonaws.com"
          },
          "Action": [
            "kms:GenerateDataKey",
            "kms:Decrypt"
          ],
          "Resource": "*"
        },
        {
          "Sid": "Enable IAM user permissions",
          "Effect": "Allow",
          "Principal": {
                "AWS": "arn:aws:iam::111111111111:root"
          },
          "Action": "kms:*",
          "Resource": "*"
        },
        {
          "Sid": "Enable user to have permissions",
          "Effect": "Allow",
          "Principal": {
               "AWS" : "arn:aws:sts::111111111111:assumed-role/example-role-name"
        },
          "Action": [
            "kms:Decrypt",
            "kms:GenerateDataKey"
           ],
          "Resource": "*"
        }
      ]
    }
```

------

# Actualización de un recurso para que utilice su clave de KMS con la consola
<a name="create-kms-key-policy-for-cloudtrail-update-trail"></a>

En la CloudTrail consola, actualice un almacén de datos de seguimiento o evento para usar una clave KMS. Tenga en cuenta que el uso de su propia clave KMS conlleva AWS KMS costes de cifrado y descifrado. Para más información, consulte [Precios de AWS Key Management Service](https://aws.amazon.com/kms/pricing/).

**Topics**
+ [Actualizar un registro de seguimiento para que utilice una clave de KMS](#kms-key-policy-update-trail)
+ [Actualizar un almacén de datos de eventos para que utilice una clave de KMS](#kms-key-policy-update-eds)

## Actualizar un registro de seguimiento para que utilice una clave de KMS
<a name="kms-key-policy-update-trail"></a>

Para actualizar una ruta y utilizarla para la AWS KMS key que la modificó CloudTrail, complete los siguientes pasos en la CloudTrail consola.

**nota**  
Si está utilizando un bucket de S3 existente con una [clave de bucket de S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), CloudTrail debe tener permiso en la política de claves para utilizar las AWS KMS acciones `GenerateDataKey` y`DescribeKey`. Si `cloudtrail.amazonaws.com` no tiene estos permisos en la política de claves, no se puede crear ni actualizar un registro de seguimiento.

Para actualizar una ruta mediante el AWS CLI, consulte[Activación y desactivación del cifrado de archivos de CloudTrail registro, archivos de resumen y almacenes de datos de eventos con AWS CLI](cloudtrail-log-file-encryption-cli.md).

**Para actualizar un registro de seguimiento a fin de utilizar su clave de KMS**

1. Inicie sesión en Consola de administración de AWS y abra la CloudTrail consola en [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. Elija **Trails (Registros de seguimiento)** y, a continuación, elija un nombre de registro de seguimiento.

1. En **General details (Detalles generales)**, elija**Edit (Editar)**.

1. En **Cifrado SSE-KMS de archivos de registro**, elija **Habilitado** si desea cifrar sus archivos de registro y de resumen con cifrado SSE-KMS en vez de SSE-S3. El valor predeterminado es **Enabled (Habilitado)**. Si no habilita el cifrado SSE-KMS, los archivos de registro y de resumen se cifrarán mediante el cifrado SSE-S3. Para obtener más información sobre el cifrado SSE-KMS, consulte [Uso del cifrado del lado del servidor con AWS Key Management Service (SSE-KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)). Para obtener más información sobre el cifrado SSE-S3, consulte [Uso de cifrado del lado del servidor con claves de cifrado administradas por Amazon S3 (SSE-S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html).

   Elija **Existing (Existente)** para actualizar el registro de seguimiento con su AWS KMS key. Elija una clave de KMS que esté en la misma región que el bucket de S3 que recibe sus archivos de registros. Para verificar la región a la que pertenece un bucket de S3, consulte sus propiedades en la consola de S3.
**nota**  
También puede escribir el ARN de una clave de otra cuenta. Para obtener más información, consulte [Actualización de un recurso para que utilice su clave de KMS con la consola](#create-kms-key-policy-for-cloudtrail-update-trail). La política de claves debe permitir CloudTrail el uso de la clave para cifrar los archivos de registro y los archivos de resumen, y permitir que los usuarios que especifique lean los archivos de registro o los archivos de resumen sin cifrar. Para obtener más información sobre cómo editar manualmente la política de claves, consulte [Configurar políticas AWS KMS clave para CloudTrail](create-kms-key-policy-for-cloudtrail.md).

   En **AWS KMS Alias**, especifique el alias con el que ha cambiado la política para usarla CloudTrail, en el formato. `alias/` *MyAliasName* Para obtener más información, consulte [Actualización de un recurso para que utilice su clave de KMS con la consola](#create-kms-key-policy-for-cloudtrail-update-trail).

   Puede escribir el nombre del alias, el ARN o el ID de clave único global. Si la clave de KMS pertenece a otra cuenta, compruebe que la política de claves tenga los permisos que le permiten utilizarla. El valor puede tener uno de los siguientes formatos:
   + **Nombre del alias**: `alias/MyAliasName`
   + **ARN del alias**: `arn:aws:kms:region:123456789012:alias/MyAliasName` 
   + **ARN de la clave**: `arn:aws:kms:region:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID de la clave único global**: `12345678-1234-1234-1234-123456789012` 

1. Elija **Update trail (Actualizar registro de seguimiento)**.
**nota**  
Si la clave de KMS que eligió está deshabilitada o pendiente de eliminación, no podrá guardar el registro de seguimiento con dicha clave de KMS. Puede habilitar la clave de KMS o elegir otra. Para obtener más información, consulte [Estado de la clave: efecto en su clave de KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) en la *Guía para desarrolladores AWS Key Management Service *.

## Actualizar un almacén de datos de eventos para que utilice una clave de KMS
<a name="kms-key-policy-update-eds"></a>

Para actualizar un banco de datos de eventos para AWS KMS key que utilice el que ha modificado CloudTrail, complete los siguientes pasos en la CloudTrail consola.

Para actualizar un banco de datos de eventos mediante el AWS CLI, consulte[Actualice un banco de datos de eventos con el AWS CLI](lake-cli-update-eds.md).

**importante**  
La desactivación o eliminación de la clave KMS, o la eliminación de CloudTrail los permisos de la clave, CloudTrail impide que los eventos se introduzcan en el almacén de datos de eventos y evita que los usuarios consulten los datos del almacén de datos de eventos que estaba cifrado con la clave. Después de asociar un almacén de datos de eventos a una clave de KMS, esta no se podrá eliminar ni cambiar. Antes de deshabilitar o eliminar una clave de KMS que se esté utilizando con un almacén de datos de eventos, elimínelo o haga una copia de seguridad de este.

**Para actualizar un almacén de datos de eventos para que utilice su clave de KMS**

1. Inicie sesión en Consola de administración de AWS y abra la consola en CloudTrail . [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/)

1. En el panel de navegación, elija **Event data stores** (Almacenes de datos de eventos) en **Lake**. Elija un almacén de datos de eventos para actualizarlo.

1. En **General details (Detalles generales)**, elija**Edit (Editar)**.

1. Si la opción **Cifrado** aún no está habilitada, seleccione **Utilizar mi propia AWS KMS key** para cifrar el almacén de datos de eventos con su propia clave de KMS.

   Elija **Existing** (Existente) para actualizar el almacén de datos de eventos con su clave de KMS. Seleccione una clave de KMS que esté en la misma región que el almacén de datos de eventos. No se admite el uso de una clave de otra cuenta.

   En **Introducir AWS KMS alias**, especifique el alias con el que ha cambiado la política para usarla CloudTrail, en el formato `alias/`*MyAliasName*. Para obtener más información, consulte [Actualización de un recurso para que utilice su clave de KMS con la consola](#create-kms-key-policy-for-cloudtrail-update-trail).

   Puede elegir un alias o utilizar el ID global único de la clave. El valor puede tener uno de los siguientes formatos:
   + **Nombre del alias**: `alias/MyAliasName`
   + **ARN del alias**: `arn:aws:kms:region:123456789012:alias/MyAliasName` 
   + **ARN de la clave**: `arn:aws:kms:region:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID de la clave único global**: `12345678-1234-1234-1234-123456789012` 

1. Seleccione **Save changes (Guardar cambios)**.
**nota**  
Si la clave de KMS que eligió está deshabilitada o pendiente de eliminación, no podrá guardar la configuración del almacén de datos de eventos con dicha clave de KMS. Puede habilitar la clave de KMS o elegir una diferente. Para obtener más información, consulte [Estado de la clave: efecto en su clave de KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) en la *Guía para desarrolladores AWS Key Management Service *.

# Activación y desactivación del cifrado de archivos de CloudTrail registro, archivos de resumen y almacenes de datos de eventos con AWS CLI
<a name="cloudtrail-log-file-encryption-cli"></a>

En este tema se describe cómo habilitar y deshabilitar el cifrado SSE-KMS para los archivos de CloudTrail registro, los archivos de resumen y los almacenes de datos de eventos mediante el. AWS CLI Para obtener información general, consulte [Cifrado de archivos de CloudTrail registro, archivos de resumen y almacenes de datos de eventos con AWS KMS claves (SSE-KMS)](encrypting-cloudtrail-log-files-with-aws-kms.md).

**Topics**
+ [Habilitar el cifrado de los archivos de CloudTrail registro, los archivos de resumen y los almacenes de datos de eventos mediante el AWS CLI](#cloudtrail-log-file-encryption-cli-enable)
+ [Deshabilitar el cifrado de los archivos de registro y los archivos de resumen mediante el AWS CLI](#cloudtrail-log-file-encryption-cli-disable)

## Habilitar el cifrado de los archivos de CloudTrail registro, los archivos de resumen y los almacenes de datos de eventos mediante el AWS CLI
<a name="cloudtrail-log-file-encryption-cli-enable"></a>
+ [Habilite el cifrado de archivos de registro y de resumen para un registro de seguimiento](#log-encryption-trail)
+ [Habilite el cifrado para un almacén de datos de eventos](#log-encryption-eds)<a name="log-encryption-trail"></a>

**Habilite el cifrado de archivos de registro y de resumen para un registro de seguimiento**

1. Cree una clave con la AWS CLI. La clave que cree debe estar en la misma región que el depósito de S3 que recibe los archivos de CloudTrail registro. Para este paso, utilice el AWS KMS [https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html](https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html)comando.

1. Obtenga la política de claves existente para poder modificarla y utilizarla con ella CloudTrail. Puede recuperar la política clave con el AWS KMS [https://docs.aws.amazon.com/cli/latest/reference/kms/get-key-policy.html](https://docs.aws.amazon.com/cli/latest/reference/kms/get-key-policy.html)comando. 

1. Añada las secciones necesarias a la política de claves para que los usuarios CloudTrail puedan cifrar y descifrar los archivos de registro y los archivos de resumen. Asegúrese de que todos los usuarios que van a leer los archivos de registro tengan permisos para descifrarlos. No modifique las secciones existentes de la política. Para obtener información acerca de las secciones de políticas que se deben incluir, consulte [Configurar políticas AWS KMS clave para CloudTrail](create-kms-key-policy-for-cloudtrail.md).

1. Adjunte el archivo de política JSON modificado a la clave mediante el AWS KMS [https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html)comando. 

1. Ejecute el `update-trail` comando CloudTrail `create-trail` o con el `--kms-key-id` parámetro. Este comando permite el cifrado de los archivos de registro y de resumen.

   ```
   aws cloudtrail update-trail --name Default --kms-key-id alias/MyKmsKey
   ```

   El parámetro `--kms-key-id` especifica la clave cuya política ha modificado para CloudTrail. Puede estar en alguno de los siguientes formatos: 
   + **Nombre del alias** Ejemplo: `alias/MyAliasName`
   + **ARN del alias** Ejemplo: `arn:aws:kms:us-east-2:123456789012:alias/MyAliasName` 
   + **ARN de clave** Ejemplo: `arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID de la clave único global** Ejemplo: `12345678-1234-1234-1234-123456789012` 

   A continuación, se muestra un ejemplo de respuesta:

   ```
   {
       "IncludeGlobalServiceEvents": true, 
       "Name": "Default", 
       "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/Default", 
       "LogFileValidationEnabled": false,
       "KmsKeyId": "arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012", 
       "S3BucketName": "amzn-s3-demo-bucket"
   }
   ```

   La presencia del elemento `KmsKeyId` indica que se habilitó el cifrado de los archivos de registro. Si se habilitó la validación de los archivos de registro (lo que se indica con el valor verdadero del elemento `LogFileValidationEnabled`), esto también indica que se habilitó el cifrado de los archivos de resumen. Los archivos de registros y de resumen cifrados deberían aparecer en el bucket de S3 configurado para el registro de seguimiento en un plazo de aproximadamente 5 minutos.<a name="log-encryption-eds"></a>

**Habilite el cifrado para un almacén de datos de eventos**

1. Cree una clave con la AWS CLI. La clave que cree debe estar en la misma región que el almacén de datos de eventos. Para este paso, ejecute el AWS KMS [https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html](https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html)comando.

1. Obtenga la política de claves existente para editarla y usarla con ella CloudTrail. Puede obtener la política clave ejecutando el AWS KMS [https://docs.aws.amazon.com/cli/latest/reference/kms/get-key-policy.html](https://docs.aws.amazon.com/cli/latest/reference/kms/get-key-policy.html)comando. 

1. Agregue las secciones necesarias a la política de claves para que CloudTrail pueda cifrar y los usuarios puedan descifrar el almacén de datos de eventos. Asegúrese de que todos los usuarios que van a leer el almacén de datos de eventos tengan permisos para descifrarlos. No modifique las secciones existentes de la política. Para obtener información acerca de las secciones de políticas que se deben incluir, consulte [Configurar políticas AWS KMS clave para CloudTrail](create-kms-key-policy-for-cloudtrail.md).

1. Adjunta el archivo de política JSON editado a la clave ejecutando el AWS KMS [put-key-policy](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html)comando.

1. Ejecute el `update-event-data-store` comando CloudTrail `create-event-data-store` o y añada el `--kms-key-id` parámetro. Este comando habilita el cifrado del almacén de datos de eventos.

   ```
   aws cloudtrail update-event-data-store --name my-event-data-store --kms-key-id alias/MyKmsKey
   ```

   El parámetro `--kms-key-id` especifica la clave cuya política ha modificado para CloudTrail. Puede estar en uno de los siguientes cuatro formatos: 
   + **Nombre del alias** Ejemplo: `alias/MyAliasName`
   + **ARN del alias** Ejemplo: `arn:aws:kms:us-east-2:123456789012:alias/MyAliasName` 
   + **ARN de clave** Ejemplo: `arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID de la clave único global** Ejemplo: `12345678-1234-1234-1234-123456789012` 

   A continuación, se muestra un ejemplo de respuesta:

   ```
   {
       "Name": "my-event-data-store",
       "ARN": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLEf852-4e8f-8bd1-bcf6cEXAMPLE",
       "RetentionPeriod": "90",
       "KmsKeyId": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
       "MultiRegionEnabled": false,
       "OrganizationEnabled": false,
       "TerminationProtectionEnabled": true,
       "AdvancedEventSelectors": [{
           "Name": "Select all external events",
           "FieldSelectors": [{
               "Field": "eventCategory",
               "Equals": [
                   "ActivityAuditLog"
               ]
           }]
       }]
   }
   ```

   La presencia del elemento `KmsKeyId` indica que se habilitó el cifrado del almacén de datos de eventos.

## Deshabilitar el cifrado de los archivos de registro y los archivos de resumen mediante el AWS CLI
<a name="cloudtrail-log-file-encryption-cli-disable"></a>

Para detener el cifrado de los archivos de registro y de resumen en un registro de seguimiento, ejecute `update-trail` y pase una cadena vacía al parámetro `kms-key-id`: 

```
aws cloudtrail update-trail --name my-test-trail --kms-key-id ""
```

A continuación, se muestra un ejemplo de respuesta:

```
{
    "IncludeGlobalServiceEvents": true, 
    "Name": "Default", 
    "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/Default", 
    "LogFileValidationEnabled": false, 
    "S3BucketName": "amzn-s3-demo-bucket"
}
```

La ausencia del valor `KmsKeyId` indica que el cifrado de los archivos de registro y de resumen ya no está habilitado.

**importante**  
No se puede detener el cifrado de un almacén de datos de eventos.

# Cómo AWS CloudTrail usa AWS KMS
<a name="how-kms-works-with-cloudtrail"></a>

En esta sección se describe cómo AWS KMS funciona un CloudTrail registro cifrado con una clave SSE-KMS.

**importante**  
AWS CloudTrail y Amazon S3 solo admiten dispositivos [simétricos AWS KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose-key-spec.html#symmetric-cmks). No puede utilizar una [clave KMS asimétrica](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) para cifrar sus registros. CloudTrail Para obtener ayuda para determinar si una clave KMS es simétrica o asimétrica, consulte [Identificación de distintos tipos de claves](https://docs.aws.amazon.com/kms/latest/developerguide/identify-key-types.html) en la *Guía para desarrolladores de AWS Key Management Service *.

No paga ningún cargo por el uso de claves cuando CloudTrail lee o escribe archivos de registro cifrados con una clave SSE-KMS. Sin embargo, paga un cargo por el uso de la clave cuando accede a los archivos de CloudTrail registro cifrados con una clave SSE-KMS. [Para obtener información sobre AWS KMS los precios, consulte AWS Key Management Service Precios.](https://aws.amazon.com/kms/pricing/) Para obtener información sobre precios de CloudTrail , consulte los [precios de AWS CloudTrail](https://aws.amazon.com/cloudtrail/pricing/).

## Conocer cuándo se usa su clave KMS en el registro de seguimiento
<a name="cloudtrail-details"></a>

El cifrado de archivos de CloudTrail registro AWS KMS se basa en la función de Amazon S3 denominada cifrado del lado del servidor con un AWS KMS key (SSE-KMS). Para obtener más información sobre SSE-KMS, consulte [Uso del cifrado del lado del servidor con AWS KMS claves (SSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) en la Guía del usuario de *Amazon* Simple Storage Service.

Cuando configura AWS CloudTrail el SSE-KMS para cifrar sus archivos de registro y Amazon CloudTrail S3 lo usa AWS KMS keys cuando realiza determinadas acciones con esos servicios. En las secciones siguientes se explica cuándo y cómo dichos servicios pueden utilizar su clave KMS y se proporciona información adicional que puede utilizar para validar esta explicación.

**Contents**
+ [Se configura CloudTrail para cifrar los archivos de registro con su AWS KMS key](#cloudtrail-details-update-configuration)
+ [CloudTrail coloca un archivo de registro en su bucket de S3](#cloudtrail-details-put-log-file)
+ [Obtenga un archivo de registro cifrado del bucket de S3](#cloudtrail-details-get-log-file)

### Se configura CloudTrail para cifrar los archivos de registro con su AWS KMS key
<a name="cloudtrail-details-update-configuration"></a>

Al [actualizar la CloudTrail configuración para usar la clave de KMS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/create-kms-key-policy-for-cloudtrail-update-trail.html), CloudTrail envía una [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)solicitud AWS KMS para comprobar que la clave de KMS existe y que CloudTrail tiene permiso para utilizarla con fines de cifrado. CloudTrail no utiliza la clave de datos resultante.

La solicitud `GenerateDataKey` incluye la siguiente información para el [contexto de cifrado](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html):
+ El [nombre del recurso de Amazon (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) de la ruta CloudTrail 
+ El ARN del depósito S3 y la ruta donde se entregan los archivos de CloudTrail registro

La `GenerateDataKey` solicitud da como resultado una entrada en CloudTrail los registros similar a la del siguiente ejemplo. Si ve una entrada de registro como esta, puede determinar que CloudTrail se ha realizado la AWS KMS `GenerateDataKey` operación para un registro específico. AWS KMS creó la clave de datos con una clave KMS específica.

```
{
    "eventVersion": "1.09",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "cloudtrail.amazonaws.com"
    },
    "eventTime": "2024-12-06T20:14:46Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "cloudtrail.amazonaws.com",
    "userAgent": "cloudtrail.amazonaws.com",
    "requestParameters": {
        "keySpec": "AES_256",
        "keyId": "arn:aws:kms:us-east-1:123456789012:key/example1-6736-4661-bf00-exampleeb770",
        "encryptionContext": {
            "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1:123456789012:trail/management-events",
            "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket-123456789012-9af1fb49/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T2010Z_TO50OLMG1hIQ1png.json.gz"
        }
    },
    "responseElements": null,
    "requestID": "a0555e85-7e8a-4765-bd8f-2222295558e1",
    "eventID": "e4f3557e-7dbd-4e37-a00a-d86c137d1111",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123456789012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-east-1:123456789012:key/example1-6736-4661-bf00-exampleeb770"
         }],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "sharedEventID": "ce71d6be-0846-498e-851f-111a1af9078f",
    "eventCategory": "Management"
}
```

### CloudTrail coloca un archivo de registro en su bucket de S3
<a name="cloudtrail-details-put-log-file"></a>

Cada vez que CloudTrail coloca un archivo de registro en su bucket de S3, Amazon S3 envía una [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)solicitud AWS KMS en su nombre CloudTrail. En respuesta a esta solicitud, AWS KMS genera una clave de datos única y, a continuación, envía a Amazon S3 dos copias de la clave de datos, una en texto sin formato y otra cifrada con la clave de KMS especificada. Amazon S3 utiliza la clave de datos de texto sin formato para cifrar el archivo de CloudTrail registro y, a continuación, elimina la clave de datos de texto sin formato de la memoria tan pronto como sea posible tras su uso. Amazon S3 almacena la clave de datos cifrados como metadatos con el archivo de CloudTrail registro cifrado.

La solicitud `GenerateDataKey` incluye la siguiente información para el [contexto de cifrado](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html):
+ El [nombre del recurso de Amazon (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) de la ruta CloudTrail 
+ El ARN del objeto S3 (el archivo de CloudTrail registro)

Cada `GenerateDataKey` solicitud da como resultado una entrada en CloudTrail los registros similar a la del siguiente ejemplo. Si ve una entrada de registro como esta, puede determinar que CloudTrail se ha realizado la AWS KMS `GenerateDataKey` operación de un registro específico para proteger un archivo de registro específico. AWS KMS creó la clave de datos con la clave KMS especificada, que se muestra dos veces en la misma entrada de registro.

```
{
    "eventVersion": "1.09",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "cloudtrail.amazonaws.com"
    },
    "eventTime": "2024-12-06T21:49:28Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "cloudtrail.amazonaws.com",
    "userAgent": "cloudtrail.amazonaws.com",
    "requestParameters": {
        "encryptionContext": {
            "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1::trail/insights-trail",
            "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket1-123456789012-7867ab0c/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T2150Z_hVXmrJzjZk2wAM2V.json.gz"
        },
        "keySpec": "AES_256",
        "keyId": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a"
    },
    "responseElements": null,
    "requestID": "11117d14-9232-414a-b3d1-01bab4dc9f99",
    "eventID": "999e9a50-512c-4e2a-84a3-111a5f511111",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123456789012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "sharedEventID": "5e663acc-b7fd-4cdd-8328-0eff862952fa",
    "eventCategory": "Management"
}
```

### Obtenga un archivo de registro cifrado del bucket de S3
<a name="cloudtrail-details-get-log-file"></a>

Cada vez que obtiene un archivo de CloudTrail registro cifrado de su bucket de S3, Amazon S3 envía una [https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)solicitud AWS KMS en su nombre para descifrar la clave de datos cifrados del archivo de registro. En respuesta a esta solicitud, AWS KMS utiliza la clave de KMS para descifrar la clave de datos y, a continuación, envía la clave de datos de texto sin formato a Amazon S3. Amazon S3 utiliza la clave de datos de texto sin formato para descifrar el archivo de CloudTrail registro y, a continuación, elimina la clave de datos de texto sin formato de la memoria lo antes posible tras su uso.

La solicitud `Decrypt` incluye la siguiente información para el [contexto de cifrado](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html):
+ El [nombre del recurso de Amazon (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) de la ruta CloudTrail 
+ El ARN del objeto S3 (el archivo de CloudTrail registro)

Cada `Decrypt` solicitud da como resultado una entrada en CloudTrail los registros similar a la del siguiente ejemplo. Cuando ve una entrada de registro como esta, puede determinar que un rol asumido denominó AWS KMS `Decrypt` operación para una ruta y un archivo de registro específicos. AWS KMS descifró la clave de datos con una clave KMS específica.

```
{
    "eventVersion": "1.09",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AIDACKCEVSQ6C2EXAMPLE",
        "arn": "arn:aws:sts::123456789012:assumed-role/Admin",
        "accountId": "123456789012",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AIDACKCEVSQ6C2EXAMPLE",
                "arn": "arn:aws:iam::123456789012:role/Admin",
                "accountId": "123456789012",
                "userName": "Admin"
            },
            "attributes": {
                "creationDate": "2024-12-06T22:04:04Z",
                "mfaAuthenticated": "false"
            }
        },
        "invokedBy": "AWS Internal"
    },
    "eventTime": "2024-12-06T22:26:34Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "encryptionContext": {
            "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-east-1:123456789012:trail/insights-trail",
            "aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-logging-bucket1-123456789012-7867ab0c/AWSLogs/123456789012/CloudTrail/us-east-1/2024/12/06/123456789012_CloudTrail_us-east-1_20241206T0000Z_aAAsHbGBdye3jp2R.json.gz"
        },
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "1ab2d2d2-111a-2222-a59b-11a2b3832b53",
    "eventID": "af4d4074-2849-4b3d-1a11-a1aaa111a111",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123456789012",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-east-1:123456789012:key/example9-16ef-48ba-9163-example67a5a"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management",
    "sessionCredentialFromConsole": "true"
}
```