

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Crittografia di file di CloudTrail registro, file digest e archivi dati di eventi con AWS KMS chiavi (SSE-KMS)
<a name="encrypting-cloudtrail-log-files-with-aws-kms"></a>

Per impostazione predefinita, i file di registro e i file digest forniti dal CloudTrail bucket vengono crittografati utilizzando la [crittografia lato server con una chiave KMS (SSE-KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)). [Se non abiliti la crittografia SSE-KMS, i file di log e i file digest vengono crittografati utilizzando la crittografia SSE-S3.](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html)

**Nota**  
Se stai utilizzando un bucket S3 esistente con una chiave del bucket [S3, CloudTrail devi disporre dell'autorizzazione nella policy chiave per](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html) utilizzare le azioni e. AWS KMS `GenerateDataKey` `DescribeKey` Se a `cloudtrail.amazonaws.com` non sono concesse tali autorizzazioni nella policy della chiave, non puoi creare o aggiornare un percorso.

Per utilizzare SSE-KMS con CloudTrail, crei e gestisci un. [AWS KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) Si allega una politica alla chiave che determina quali utenti possono utilizzare la chiave per crittografare e decrittografare CloudTrail i file di registro e i file digest. La decrittografia è un processo seamless in S3. Quando gli utenti autorizzati della chiave leggono i file di CloudTrail registro o i file digest, S3 gestisce la decrittografia e gli utenti autorizzati sono in grado di leggere i file in formato non crittografato.

Questo approccio presenta i vantaggi seguenti:
+ Puoi creare e gestire tu stesso la chiave KMS.
+ Puoi utilizzare una singola chiave KMS per crittografare e decrittografare i file di registro e i file digest per più account in tutte le regioni.
+ Hai il controllo su chi può utilizzare la tua chiave per crittografare e CloudTrail decrittografare i file di registro e i file digest. Puoi assegnare le autorizzazioni per la chiave agli utenti nell'organizzazione in base alle tue esigenze.
+ Disponi di una sicurezza avanzata. Con questa funzionalità, per leggere i file di registro o i file digest, sono necessarie le seguenti autorizzazioni:
  + Un utente deve disporre delle autorizzazioni di lettura S3 per il bucket che contiene i file di log e i file digest.
  + Un utente deve disporre di una policy o di un ruolo che consente di decrittare le autorizzazioni applicate dalla policy della chiave KMS.
+ Poiché S3 decrittografa automaticamente i file di registro e i file digest per le richieste degli utenti autorizzati a utilizzare la chiave KMS, la crittografia SSE-KMS per i file è retrocompatibile con le applicazioni che leggono i dati di registro. CloudTrail 

**Nota**  
La chiave KMS scelta deve essere creata nella stessa AWS regione del bucket Amazon S3 che riceve i file di log e i file digest. Ad esempio, se i file di log e i file digest verranno archiviati in un bucket nella regione Stati Uniti orientali (Ohio), devi creare o scegliere una chiave KMS creata in quella regione. Per verificare la regione per un bucket Amazon S3, esamina le relative proprietà nella console Amazon S3.

Per impostazione predefinita, gli archivi dati degli eventi sono crittografati da. CloudTrail È possibile utilizzare la propria chiave KMS per la crittografia quando si crea o si aggiorna un archivio dati di eventi.

## Abilitazione della crittografia dei file di log
<a name="encrypting-cloudtrail-log-files-with-aws-kms-enabling"></a>

**Nota**  
Se crei una chiave KMS nella CloudTrail console, CloudTrail aggiunge automaticamente le sezioni relative alla politica della chiave KMS richieste. Segui queste procedure se hai creato una chiave nella console IAM o AWS CLI se devi aggiungere manualmente le sezioni della policy richieste.

Per abilitare la crittografia SSE-KMS per i file di CloudTrail registro, esegui i seguenti passaggi di alto livello:

1. Creare una chiave KMS.
   + *Per informazioni sulla creazione di una chiave KMS con Console di gestione AWS, consulta [Creating Keys nella Developer Guide](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html).AWS Key Management Service * 
   + [Per informazioni sulla creazione di una chiave KMS con AWS CLI, consulta create-key.](https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html)
**Nota**  
La chiave KMS che scegli deve trovarsi nella stessa regione del bucket S3 che riceve i file di registro e i file digest. Per verificare la Regione per un bucket S3, verifica le relative proprietà nella console S3. 

1. Aggiungi sezioni politiche alla chiave che consentono di crittografare e agli utenti di CloudTrail decrittografare i file di registro e i file digest. 
   + Per ulteriori informazioni sugli elementi da includere nella policy, consulta [Configurare le politiche AWS KMS chiave per CloudTrail](create-kms-key-policy-for-cloudtrail.md).
**avvertimento**  
Assicurati di includere le autorizzazioni di decrittografia nella politica per tutti gli utenti che devono leggere i file di registro o i file digest. Se non esegui questo passaggio prima di aggiungere la chiave alla configurazione del trail, gli utenti senza autorizzazioni di decrittografia non saranno in grado di leggere i file crittografati fino alla concessione delle suddette autorizzazioni.
   + Per informazioni sulla modifica di una policy con la console IAM, consulta [Editing a Key Policy](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) nella *Guida per gli sviluppatori di AWS Key Management Service *.
   + Per informazioni su come allegare una politica a una chiave KMS con, consulta. AWS CLI[put-key-policy](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html)

1. Aggiorna il tuo archivio dati di percorsi o eventi per utilizzare la chiave KMS per cui hai modificato la politica. CloudTrail
   + Per aggiornare un data store di percorsi o eventi utilizzando la CloudTrail console, consulta[Aggiornamento di una risorsa per utilizzare la chiave KMS con la console](create-kms-key-policy-for-cloudtrail-update-trail.md).
   + Per aggiornare un data store di percorsi o eventi utilizzando il AWS CLI, vedere[Abilitazione e disabilitazione della crittografia per file di CloudTrail registro, file digest e archivi di dati di eventi con AWS CLI](cloudtrail-log-file-encryption-cli.md).

CloudTrail supporta anche chiavi AWS KMS multiregionali. Per ulteriori informazioni sulle chiavi per più regioni, consulta [Using multi-Region keys](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) nella *Guida per gli sviluppatori di AWS Key Management Service *.

La sezione successiva descrive le sezioni della politica con cui deve essere utilizzata la politica delle chiavi KMS. CloudTrail

# Concessione delle autorizzazioni per la creazione di una chiave KMS
<a name="granting-kms-permissions"></a>

Puoi concedere agli utenti il permesso di creare un account 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)politica.

**Per concedere l'autorizzazione per creare una chiave KMS**

1. Aprire la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Scegliere il gruppo o l'utente a cui si desidera concedere l'autorizzazione.

1. Scegli la scheda **Autorizzazioni**.

1.  Dall'elenco **Aggiungi autorizzazioni**, scegli **Allega politiche**. 

1. Cerca **AWSKeyManagementServicePowerUser**, scegli la politica, quindi scegli **Allega politiche**. 

   A questo punto l'utente ha l'autorizzazione per creare una chiave KMS. Per ulteriori informazioni sulla creazione di policy, consulta [Creating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) nella *IAM User Guide*.

# Configurare le politiche AWS KMS chiave per CloudTrail
<a name="create-kms-key-policy-for-cloudtrail"></a>

Puoi crearne uno AWS KMS key in tre modi:
+ La CloudTrail console
+ La console AWS di gestione
+ La AWS CLI

**Nota**  
Se crei una chiave KMS nella CloudTrail console, CloudTrail aggiunge la politica della chiave KMS richiesta per te. Non devi aggiungere manualmente le istruzioni della policy. Per informazioni, consulta [Policy chiave KMS predefinita creata nella console CloudTrail](default-kms-key-policy.md).

Se crei una chiave KMS in Console di gestione AWS o il AWS CLI, devi aggiungere sezioni di policy alla chiave in modo da poterla utilizzare con. CloudTrail La policy deve consentire di utilizzare la chiave CloudTrail per crittografare i file di registro, i file digest e gli archivi dati degli eventi e consentire agli utenti specificati di leggere i file di registro e i file digest in formato non crittografato.

Consulta le seguenti risorse:
+ [Per creare una chiave KMS con, vedi create-key. AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/kms/create-key.html) 
+ *Per modificare una politica chiave KMS per CloudTrail, consulta [Modifica di una politica chiave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) nella Guida per gli sviluppatori.AWS Key Management Service *
+ Per dettagli tecnici sulle modalità di CloudTrail utilizzo AWS KMS, consulta[Come si AWS CloudTrail usa AWS KMS](how-kms-works-with-cloudtrail.md).

**Topics**
+ [Sezioni chiave obbligatorie della policy KMS da utilizzare con CloudTrail](#create-kms-key-policy-for-cloudtrail-policy-sections)
+ [Concessione delle autorizzazioni di crittografia per i percorsi](#create-kms-key-policy-for-cloudtrail-encrypt)
+ [Concessione delle autorizzazioni di crittografia per gli archivi di dati di eventi](#create-kms-key-policy-for-cloudtrail-encrypt-eds)
+ [Concessione delle autorizzazioni di decrittografia per i sentieri](#create-kms-key-policy-for-cloudtrail-decrypt)
+ [Concessione delle autorizzazioni di decrittografia per gli archivi dati degli eventi](#create-kms-key-policy-for-cloudtrail-decrypt-eds)
+ [Abilita CloudTrail per descrivere le proprietà della chiave KMS](#create-kms-key-policy-for-cloudtrail-describe)
+ [Policy chiave KMS predefinita creata nella console CloudTrail](default-kms-key-policy.md)

## Sezioni chiave obbligatorie della policy KMS da utilizzare con CloudTrail
<a name="create-kms-key-policy-for-cloudtrail-policy-sections"></a>

Se hai creato una chiave KMS con la Console di AWS gestione o la AWS CLI, devi almeno aggiungere le seguenti istruzioni alla politica delle chiavi KMS per farla funzionare. CloudTrail

**Topics**
+ [Elementi della policy della chiave KMS richiesti per i trail](#required-kms-key-policy-trails)
+ [Elementi della policy della chiave KMS richiesti per i datastore di eventi](#required-kms-key-policy-eventdatastores)

### Elementi della policy della chiave KMS richiesti per i trail
<a name="required-kms-key-policy-trails"></a>

1. Concedi le autorizzazioni per crittografare i file di CloudTrail log e digest. Per ulteriori informazioni, consulta [Concessione delle autorizzazioni di crittografia per i percorsi](#create-kms-key-policy-for-cloudtrail-encrypt).

1. Concedi le autorizzazioni per CloudTrail decrittografare i file di log e digest. Per ulteriori informazioni, consulta [Concessione delle autorizzazioni di decrittografia per i sentieri](#create-kms-key-policy-for-cloudtrail-decrypt). Se utilizzi un bucket S3 esistente con una [chiave del bucket S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), sono necessarie le autorizzazioni `kms:Decrypt` per creare o aggiornare un percorso con la crittografia SSE-KMS abilitata.

1. Abilita CloudTrail per descrivere le proprietà della chiave KMS. Per ulteriori informazioni, consulta [Abilita CloudTrail per descrivere le proprietà della chiave KMS](#create-kms-key-policy-for-cloudtrail-describe).

Come best practice per la sicurezza, aggiungi una chiave di condizione `aws:SourceArn` per la policy della chiave KMS. La chiave di condizione globale IAM `aws:SourceArn` aiuta a garantire che venga CloudTrail utilizzata la chiave KMS solo per uno o più percorsi specifici. Il valore di `aws:SourceArn` è sempre l'ARN del percorso (o l'array di percorsi ARNs) che utilizza la chiave KMS. Assicurarsi di aggiungere la chiave di condizione `aws:SourceArn` per le politiche chiave KMS per i percorsi esistenti.

Anche la chiave di condizione `aws:SourceAccount` è supportata, ma non consigliata. Il valore di `aws:SourceAccount` è l'ID account del proprietario del percorso o, per i percorsi organizzativi, l'ID dell'account di gestione.

**Importante**  
Quando aggiungi le nuove sezioni alla policy della chiave KMS, non modificare le sezioni esistenti nella policy.  
Se la crittografia è abilitata su un percorso e la chiave KMS è disabilitata o la politica della chiave KMS non è configurata correttamente CloudTrail, CloudTrail non è possibile fornire i log.

### Elementi della policy della chiave KMS richiesti per i datastore di eventi
<a name="required-kms-key-policy-eventdatastores"></a>

1. Concedi le autorizzazioni per crittografare un CloudTrail archivio dati di eventi Lake. Per ulteriori informazioni, consulta [Concessione delle autorizzazioni di crittografia per gli archivi di dati di eventi](#create-kms-key-policy-for-cloudtrail-encrypt-eds).

1. Concedi le autorizzazioni per decrittografare un CloudTrail data store di eventi Lake. Per ulteriori informazioni, consulta [Concessione delle autorizzazioni di decrittografia per gli archivi dati degli eventi](#create-kms-key-policy-for-cloudtrail-decrypt-eds).

   Quando crei un datastore di eventi e lo crittografi con una chiave KMS o esegui query su un datastore di eventi che stai crittografando con una chiave KMS, dovresti avere accesso in scrittura alla chiave KMS. La policy della chiave KMS deve avere accesso a CloudTrail e la chiave KMS deve essere gestibile dagli utenti che eseguono operazioni (come le query) sul data store degli eventi.

1. Abilita CloudTrail per descrivere le proprietà della chiave KMS. Per ulteriori informazioni, consulta [Abilita CloudTrail per descrivere le proprietà della chiave KMS](#create-kms-key-policy-for-cloudtrail-describe).

Le chiavi di condizione `aws:SourceArn` e `aws:SourceAccount` non sono supportate nelle policy della chiave KMS per gli archivi di dati di eventi.

**Importante**  
Quando aggiungi le nuove sezioni alla policy della chiave KMS, non modificare le sezioni esistenti nella policy.  
Se la crittografia è abilitata su un archivio dati di eventi e la chiave KMS è disabilitata o eliminata o la politica della chiave KMS non è configurata correttamente CloudTrail, CloudTrail non è possibile inviare eventi al data store degli eventi.

## Concessione delle autorizzazioni di crittografia per i percorsi
<a name="create-kms-key-policy-for-cloudtrail-encrypt"></a>

**Example Consentono di CloudTrail crittografare i file di registro e i file digest per conto di account specifici**  
CloudTrail necessita dell'autorizzazione esplicita per utilizzare la chiave KMS per crittografare i file di registro e i file digest per conto di account specifici. Per specificare un account, aggiungi la seguente dichiarazione obbligatoria alla politica delle chiavi KMS e *account-id* sostituiscila *trailName* con i valori appropriati per la tua configurazione. *region* Puoi aggiungere un altro account IDs alla `EncryptionContext` sezione per consentire a tali account di utilizzare la tua chiave KMS CloudTrail per crittografare i file di registro e i file digest.  
Come best practice per la sicurezza, aggiungi una chiave di condizione `aws:SourceArn` per la policy della chiave KMS per un trail. La chiave di condizione globale IAM `aws:SourceArn` aiuta a garantire che la chiave KMS venga CloudTrail utilizzata solo per uno o più percorsi specifici.

```
{
   "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**  
L'esempio seguente di dichiarazione politica illustra come un altro account può utilizzare la chiave KMS per crittografare i file di CloudTrail registro e i file digest.

**Scenario**
+ La chiave KMS si trova nell'account *111111111111*.
+ Sia tu che l'account crittograferete i log*222222222222*.

Nella politica, aggiungi uno o più account che vengono crittografati con la tua chiave a. CloudTrail **EncryptionContext** Ciò limita CloudTrail l'utilizzo della chiave per crittografare i file di registro e i file digest solo per gli account specificati. Quando concedi alla radice dell'account l'*222222222222*autorizzazione a crittografare i file di registro e i file digest, delega l'autorizzazione all'amministratore dell'account di crittografare le autorizzazioni necessarie agli altri utenti dell'account. L'amministratore dell'account esegue questa operazione modificando le policy associate a quegli utenti IAM.

Come best practice per la sicurezza, aggiungi una chiave di condizione `aws:SourceArn` per la policy della chiave KMS. La chiave di condizione globale IAM `aws:SourceArn` aiuta a garantire che la chiave KMS venga CloudTrail utilizzata solo per i percorsi specificati. Questa condizione non è supportata nelle policy della chiave KMS per i datastore di eventi.

Dichiarazione della policy della chiave 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"
    }
  }
}
```

Per ulteriori informazioni sulla modifica di una politica chiave KMS da utilizzare con CloudTrail, consulta [Modifica di una politica chiave nella Guida](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) per gli AWS Key Management Service sviluppatori.

## Concessione delle autorizzazioni di crittografia per gli archivi di dati di eventi
<a name="create-kms-key-policy-for-cloudtrail-encrypt-eds"></a>

Una politica per una chiave KMS utilizzata per crittografare un archivio dati di eventi CloudTrail Lake non può utilizzare le chiavi di condizione o. `aws:SourceArn` `aws:SourceAccount` Di seguito è riportato un esempio di una policy della chiave KMS.

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

## Concessione delle autorizzazioni di decrittografia per i sentieri
<a name="create-kms-key-policy-for-cloudtrail-decrypt"></a>

Prima di aggiungere la chiave KMS alla CloudTrail configurazione, è importante concedere le autorizzazioni di decrittografia a tutti gli utenti che le richiedono. Gli utenti che dispongono delle autorizzazioni di crittografia ma non di quelle di decrittografia non saranno in grado di leggere i log crittografati. Se utilizzi un bucket S3 esistente con una [chiave del bucket S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), sono necessarie le autorizzazioni `kms:Decrypt` per creare o aggiornare un percorso con la crittografia SSE-KMS abilitata.

**Abilita le autorizzazioni di decrittografia dei log CloudTrail**  
Agli utenti della chiave devono essere assegnate autorizzazioni esplicite per leggere i file di log crittografati da CloudTrail . Per consentire agli utenti di leggere i log crittografati, aggiungi la seguente istruzione obbligatoria alla policy della chiave KMS, modificando la sezione `Principal` con l'aggiunta di una riga per ogni principale a cui vuoi consentire di decrittografare mediante la chiave 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"
    }
  }
}
```

Di seguito è riportato un esempio di politica necessaria per consentire al responsabile del CloudTrail servizio di decrittografare i log di percorso.

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

### Consentire agli utenti nell'account a decrittografare i log di trail mediante la chiave KMS
<a name="create-kms-key-policy-for-cloudtrail-decrypt-your-account"></a>

**Esempio**  
Questa istruzione della policy illustra come consentire a un utente o ruolo IAM nel tuo account di utilizzare la chiave per leggere i log crittografati nel relativo bucket S3.

**Example Scenario**  
+ La chiave KMS, il bucket S3 e l'utente IAM Bob si trovano nell'account `111111111111`.
+ Concedi all'utente IAM Bob il permesso di decrittografare i CloudTrail log nel bucket S3.

Nella policy chiave, abiliti le autorizzazioni di decrittografia dei CloudTrail log per l'utente IAM Bob.

Dichiarazione della policy della chiave 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**

### Consentire agli utenti in altri account a decrittografare i log di trail mediante la chiave KMS
<a name="create-kms-key-policy-for-cloudtrail-decrypt-other-accounts"></a>

Puoi consentire agli utenti di altri account di utilizzare la tua chiave KMS per decrittografare i trail log. Le modifiche da apportare alla policy della chiave variano a seconda che il bucket S3 si trovi nel tuo account o in un altro account.

#### Autorizzazione degli utenti di un bucket in un account diverso a decrittografare i log
<a name="create-kms-key-policy-for-cloudtrail-decrypt-different-bucket"></a>

**Esempio**  
Questa istruzione della policy illustra come consentire a un utente o ruolo IAM in un altro account di utilizzare la chiave per leggere i log crittografati da un bucket S3 in un altro account.

**Scenario**
+ La chiave KMS si trova nell'account `111111111111`.
+ L'utente IAM Alice e il bucket S3 si trovano nell'account `222222222222`.

In questo caso, CloudTrail autorizzi a decrittografare i log relativi all'account e autorizzi la politica utente IAM di Alice a usare la tua chiave`222222222222`, che è nell'account. `KeyA` `111111111111` 

Dichiarazione della policy della chiave 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"
    }
  }
}
```

Istruzione della policy dell'utente IAM Alice:

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

****  

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

------

#### Consentire agli utenti in un account diverso di decrittare i log di trail dal bucket
<a name="create-kms-key-policy-for-cloudtrail-decrypt-same-bucket"></a>

**Example**  
Questa policy illustra come un altro account può utilizzare la tua chiave per leggere i log crittografati nel tuo bucket S3.

**Example Scenario**  
+ La chiave KMS e il bucket S3 si trovano nell'account `111111111111`.
+ L'utente che leggerà i log dal bucket si trova nell'account `222222222222`.

Per abilitare questo scenario, abiliti le autorizzazioni di decrittografia per il ruolo IAM **CloudTrailReadRole**nel tuo account, quindi concedi all'altro account il permesso di assumere quel ruolo.

Dichiarazione della policy della chiave 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**dichiarazione sulla politica dell'entità fiduciaria:

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

****  

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

------

Per informazioni sulla modifica di una politica chiave KMS da utilizzare con CloudTrail, consulta [Modifica di una politica chiave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) nella *Guida per gli AWS Key Management Service sviluppatori*.

## Concessione delle autorizzazioni di decrittografia per gli archivi dati degli eventi
<a name="create-kms-key-policy-for-cloudtrail-decrypt-eds"></a>

Una politica di decrittografia per una chiave KMS utilizzata con un archivio dati di eventi CloudTrail Lake è simile alla seguente. L'utente o il ruolo ARNs specificato come valori per `Principal` necessita delle autorizzazioni di decrittografia per creare o aggiornare archivi di dati di eventi, eseguire query o ottenere risultati di query.

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

Di seguito è riportato un esempio di politica necessaria per consentire al responsabile del CloudTrail servizio di decrittografare un archivio dati di eventi.

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

## Abilita CloudTrail per descrivere le proprietà della chiave KMS
<a name="create-kms-key-policy-for-cloudtrail-describe"></a>

CloudTrail richiede la capacità di descrivere le proprietà della chiave KMS. Per abilitare questa funzionalità, aggiungi la seguente istruzione obbligatoria, senza alcuna modifica, alla policy della chiave KMS. Questa istruzione non concede CloudTrail alcuna autorizzazione oltre alle altre autorizzazioni specificate. 

Come best practice per la sicurezza, aggiungi una chiave di condizione `aws:SourceArn` per la policy della chiave KMS. La chiave di condizione globale IAM `aws:SourceArn` aiuta a garantire che la chiave KMS venga CloudTrail utilizzata solo per uno o più percorsi specifici.

```
{
  "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"
    }
  }
}
```

Per informazioni sulla modifica delle policy della chiave KMS, consulta [Editing a Key Policy](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-editing) nella *Guida per gli sviluppatori di AWS Key Management Service *.

# Policy chiave KMS predefinita creata nella console CloudTrail
<a name="default-kms-key-policy"></a>

Se ne crei una AWS KMS key nella CloudTrail console, le seguenti politiche vengono create automaticamente. La policy supporta queste autorizzazioni:
+ Consente le autorizzazioni Account AWS (root) per la chiave KMS.
+ Consente di CloudTrail crittografare i file di registro e i file digest sotto la chiave KMS e di descrivere la chiave KMS.
+ Consente a tutti gli utenti degli account specificati di decrittografare i file di registro e i file digest.
+ Permette a tutti gli utenti nell'account specificato di creare un alias KMS per la chiave KMS.
+ Abilita la decrittografia di log tra più account per l'ID account dell'account che ha creato il trail. 

**Topics**
+ [Policy della chiave KMS predefinita per i trail](#default-kms-key-policy-trail)
+ [Politica delle chiavi KMS predefinita per gli archivi di dati di eventi Lake CloudTrail](#default-kms-key-policy-eds)

## Policy della chiave KMS predefinita per i trail
<a name="default-kms-key-policy-trail"></a>

Di seguito è riportato il criterio predefinito creato per un AWS KMS key che si utilizza con un trail.

**Nota**  
La politica include una dichiarazione per consentire a più account di decrittografare i file di registro e i file digest con la chiave 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/*"
                }
            }
        }
    ]
}
```

------

## Politica delle chiavi KMS predefinita per gli archivi di dati di eventi Lake CloudTrail
<a name="default-kms-key-policy-eds"></a>

La seguente è la politica predefinita creata per un AWS KMS key che utilizzi con un data store di eventi in 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": "*"
        }
      ]
    }
```

------

# Aggiornamento di una risorsa per utilizzare la chiave KMS con la console
<a name="create-kms-key-policy-for-cloudtrail-update-trail"></a>

Sulla CloudTrail console, aggiorna un percorso o un archivio dati di eventi per utilizzare una chiave KMS. Tieni presente che l'utilizzo della tua chiave KMS comporta AWS KMS costi di crittografia e decrittografia. Per ulteriori informazioni, consulta la sezione [Prezzi di AWS Key Management Service](https://aws.amazon.com/kms/pricing/).

**Topics**
+ [Aggiornamento di un trail per l'utilizzo di una chiave KMS](#kms-key-policy-update-trail)
+ [Aggiornamento di un datastore di eventi per l'utilizzo di una chiave KMS](#kms-key-policy-update-eds)

## Aggiornamento di un trail per l'utilizzo di una chiave KMS
<a name="kms-key-policy-update-trail"></a>

Per aggiornare un percorso in modo da utilizzare AWS KMS key quello per cui lo hai modificato CloudTrail, completa i seguenti passaggi nella console. CloudTrail 

**Nota**  
Se stai utilizzando un bucket S3 esistente con una [chiave S3 Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html), CloudTrail devi disporre dell'autorizzazione nella policy chiave per utilizzare le azioni e. AWS KMS `GenerateDataKey` `DescribeKey` Se a `cloudtrail.amazonaws.com` non sono concesse tali autorizzazioni nella policy della chiave, non puoi creare o aggiornare un percorso.

Per aggiornare un percorso utilizzando il, consulta. AWS CLI[Abilitazione e disabilitazione della crittografia per file di CloudTrail registro, file digest e archivi di dati di eventi con AWS CLI](cloudtrail-log-file-encryption-cli.md)

**Per aggiornare un percorso per l'utilizzo della chiave KMS**

1. Accedi a Console di gestione AWS e apri la CloudTrail console all'indirizzo [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. Scegli **Trails** (Percorsi) e quindi un nome del percorso.

1. In **General details** (Dettagli generali), scegli **Edit** (Modifica).

1. Per la **crittografia SSE-KMS dei file di registro**, scegli **Abilitato** se desideri crittografare i file di registro e i file digest utilizzando la crittografia SSE-KMS anziché la crittografia SSE-S3. L'impostazione predefinita è **Enabled** (Abilitata). Se non abiliti la crittografia SSE-KMS, i file di registro e i file digest vengono crittografati utilizzando la crittografia SSE-S3. [Per ulteriori informazioni sulla crittografia SSE-KMS, vedere Utilizzo della crittografia lato server con (SSE-KMS). AWS Key Management Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) Per ulteriori informazioni sulla crittografia SSE-S3, consulta [Utilizzo della crittografia lato server con chiavi di crittografia gestite da Amazon S3 (SSE-S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html).

   Sceglie **Existing** (Esistente) per aggiornare il tuo percorso con la tua AWS KMS key. Scegli una chiave KMS che si trovi nella stessa Regione del bucket S3 che riceve i file di log. Per verificare la Regione per un bucket S3, visualizza le relative proprietà nella console S3.
**Nota**  
Puoi anche digitare l'ARN di una chiave da un altro account. Per ulteriori informazioni, consulta [Aggiornamento di una risorsa per utilizzare la chiave KMS con la console](#create-kms-key-policy-for-cloudtrail-update-trail). La politica chiave deve consentire di utilizzare la chiave CloudTrail per crittografare i file di registro e i file digest e consentire agli utenti specificati di leggere i file di registro o i file digest in formato non crittografato. Per informazioni sulla modifica manuale della policy della chiave, consulta [Configurare le politiche AWS KMS chiave per CloudTrail](create-kms-key-policy-for-cloudtrail.md).

   In **AWS KMS Alias**, specificate l'alias per il quale avete modificato la politica da utilizzare, nel formato. CloudTrail `alias/` *MyAliasName* Per ulteriori informazioni, consulta [Aggiornamento di una risorsa per utilizzare la chiave KMS con la console](#create-kms-key-policy-for-cloudtrail-update-trail).

   Puoi inserire il nome alias, l'ARN o l'ID chiave univoco a livello globale. Se la chiave KMS appartiene a un altro account, verifica che la policy della chiave disponga di autorizzazioni che ti consentano di utilizzarla. Il formato del valore può essere uno dei seguenti:
   + **Nome alias**: `alias/MyAliasName`
   + **ARN alias**: `arn:aws:kms:region:123456789012:alias/MyAliasName` 
   + **ARN chiave**: `arn:aws:kms:region:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID chiave univoco a livello globale**: `12345678-1234-1234-1234-123456789012` 

1. Scegli **Update trail** (Aggiorna percorso).
**Nota**  
Se la chiave KMS selezionata è disabilitata o è in attesa di eliminazione, non puoi salvare il percorso con tale chiave KMS. Puoi abilitare la chiave KMS o sceglierne un'altra. Per ulteriori informazioni, consulta [Key state: Effect on your KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) nella *Guida per gli sviluppatori di AWS Key Management Service *.

## Aggiornamento di un datastore di eventi per l'utilizzo di una chiave KMS
<a name="kms-key-policy-update-eds"></a>

Per aggiornare un Event Data Store per utilizzare AWS KMS key quello per cui hai modificato CloudTrail, completa i seguenti passaggi nella CloudTrail console.

Per aggiornare un Event Data Store utilizzando il AWS CLI, vedere[Aggiornate un archivio dati di eventi con AWS CLI](lake-cli-update-eds.md).

**Importante**  
La disabilitazione o l'eliminazione della chiave KMS o la rimozione CloudTrail delle autorizzazioni sulla chiave CloudTrail impedisce l'acquisizione di eventi nell'archivio dati degli eventi e impedisce agli utenti di interrogare i dati nell'archivio dati degli eventi che è stato crittografato con la chiave. Dopo aver associato un archivio dati di eventi a una chiave KMS, la chiave KMS non può essere rimossa né modificata. Prima di disabilitare o eliminare una chiave KMS che stai utilizzando con un datastore di eventi, elimina o esegui il backup dell'archivio dati.

**Aggiornamento di un datastore di eventi per l'utilizzo della chiave KMS**

1. Accedi e apri la console all'indirizzo. Console di gestione AWS CloudTrail [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/)

1. Nel riquadro di navigazione, seleziona **Event data stores** (Archivi dati di eventi) in **Lake**. Scegli un datastore di eventi da aggiornare.

1. In **General details** (Dettagli generali), scegli **Edit** (Modifica).

1. Per la **crittografia**, se non è già abilitata, scegli **Usa il mio AWS KMS key** per crittografare l'archivio dati degli eventi con la tua chiave KMS.

   Scegli **Existing** (Esistente) per aggiornare il datastore di eventi con la tua chiave KMS. Scegli una chiave KMS che si trovi nella stessa Regione del datastore di eventi. Una chiave di un altro account non è supportata.

   In **Inserisci AWS KMS alias**, specifica l'alias per il quale hai modificato la politica da utilizzare CloudTrail, nel formato. `alias/` *MyAliasName* Per ulteriori informazioni, consulta [Aggiornamento di una risorsa per utilizzare la chiave KMS con la console](#create-kms-key-policy-for-cloudtrail-update-trail).

   Puoi scegliere un alias o utilizzare l'ID chiave univoco globale. Il formato del valore può essere uno dei seguenti:
   + **Nome alias**: `alias/MyAliasName`
   + **ARN alias**: `arn:aws:kms:region:123456789012:alias/MyAliasName` 
   + **ARN chiave**: `arn:aws:kms:region:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID chiave univoco a livello globale**: `12345678-1234-1234-1234-123456789012` 

1. Scegli **Save changes** (Salva modifiche).
**Nota**  
Se la chiave KMS selezionata è disabilitata o è in attesa di eliminazione, non puoi salvare la configurazione delil datastore di eventi con tale chiave KMS. Puoi abilitare la chiave KMS o sceglierne una diversa. Per ulteriori informazioni, consulta [Key state: Effect on your KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html) nella *Guida per gli sviluppatori di AWS Key Management Service *.

# Abilitazione e disabilitazione della crittografia per file di CloudTrail registro, file digest e archivi di dati di eventi con AWS CLI
<a name="cloudtrail-log-file-encryption-cli"></a>

Questo argomento descrive come abilitare e disabilitare la crittografia SSE-KMS per file di CloudTrail registro, file digest e archivi dati di eventi utilizzando. AWS CLI Per informazioni generali, consulta [Crittografia di file di CloudTrail registro, file digest e archivi dati di eventi con AWS KMS chiavi (SSE-KMS)](encrypting-cloudtrail-log-files-with-aws-kms.md).

**Topics**
+ [Abilitazione della crittografia per file di CloudTrail log, file digest e archivi di dati di eventi utilizzando il AWS CLI](#cloudtrail-log-file-encryption-cli-enable)
+ [Disattivazione della crittografia per i file di registro e i file digest utilizzando il AWS CLI](#cloudtrail-log-file-encryption-cli-disable)

## Abilitazione della crittografia per file di CloudTrail log, file digest e archivi di dati di eventi utilizzando il AWS CLI
<a name="cloudtrail-log-file-encryption-cli-enable"></a>
+ [Abilita la crittografia dei file di log e dei file digest per un trail](#log-encryption-trail)
+ [Abilita la crittografia per un archivio dati di eventi](#log-encryption-eds)<a name="log-encryption-trail"></a>

**Abilita la crittografia per i file di registro e i file digest per un percorso**

1. Creare una chiave con la AWS CLI. La chiave che crei deve trovarsi nella stessa regione del bucket S3 che riceve i CloudTrail file di registro. Per questo passaggio, si utilizza il 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. Ottieni la politica chiave esistente in modo da poterla modificare per utilizzarla con CloudTrail. È possibile recuperare la politica chiave con il 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. Aggiungi le sezioni obbligatorie alla policy chiave in modo che CloudTrail possa essere crittografata e gli utenti possano decrittografare i file di registro e i file digest. Assicurati che a tutti gli utenti che leggeranno i file di log vengano concesse le autorizzazioni di decrittografia. Non modificare le sezioni esistenti della policy. Per informazioni sulle sezioni della policy da includere, consulta [Configurare le politiche AWS KMS chiave per CloudTrail](create-kms-key-policy-for-cloudtrail.md).

1. Allega il file di policy JSON modificato alla chiave utilizzando il comando. 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) 

1. Eseguite il `update-trail` comando CloudTrail `create-trail` or con il `--kms-key-id` parametro. Questo comando consente la crittografia dei file di registro e dei file digest.

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

   Il parametro `--kms-key-id` specifica la chiave con la policy modificata per CloudTrail. Può avere uno qualsiasi dei seguenti formati: 
   + **Nome alias**. Ad esempio: `alias/MyAliasName`
   + **ARN alias**. Ad esempio: `arn:aws:kms:us-east-2:123456789012:alias/MyAliasName` 
   + **ARN chiave**. Ad esempio: `arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID chiave univoco a livello globale.** Ad esempio: `12345678-1234-1234-1234-123456789012` 

   Di seguito è riportata una risposta di esempio:

   ```
   {
       "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 presenza dell'`KmsKeyId`elemento indica che la crittografia dei file di registro è stata abilitata. Se la convalida dei file di registro è stata abilitata (indicata dall'`LogFileValidationEnabled`elemento impostato su true), ciò indica anche che la crittografia è stata abilitata per i file digest. I file di log e i file digest crittografati dovrebbero apparire nel bucket S3 configurato per il trail entro circa 5 minuti.<a name="log-encryption-eds"></a>

**Abilita la crittografia per un archivio dati di eventi**

1. Creare una chiave con la AWS CLI. La chiave che hai creato deve trovarsi nella stessa Regione del datastore di eventi. Per questo passaggio, esegui il 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. Ottieni la politica chiave esistente da modificare e con cui utilizzarla CloudTrail. È possibile ottenere la politica chiave eseguendo il 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. Aggiungi le sezioni obbligatorie alla policy chiave in modo che sia CloudTrail possibile crittografare e che gli utenti possano decrittografare il data store degli eventi. Assicurati che a tutti gli utenti che leggono l'Event Data Store siano concesse le autorizzazioni di decrittografia. Non modificare le sezioni esistenti della policy. Per informazioni sulle sezioni della policy da includere, consulta [Configurare le politiche AWS KMS chiave per CloudTrail](create-kms-key-policy-for-cloudtrail.md).

1. Allega il file di policy JSON modificato alla chiave eseguendo il comando. AWS KMS [put-key-policy](https://docs.aws.amazon.com/cli/latest/reference/kms/put-key-policy.html)

1. Eseguite il `update-event-data-store` comando CloudTrail `create-event-data-store` or e aggiungete il `--kms-key-id` parametro. Questo comando abilita la crittografia dell'archivio dati degli eventi.

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

   Il parametro `--kms-key-id` specifica la chiave con la policy modificata per CloudTrail. Può avere uno qualsiasi dei seguenti quattro formati: 
   + **Nome alias**. Ad esempio: `alias/MyAliasName`
   + **ARN alias**. Ad esempio: `arn:aws:kms:us-east-2:123456789012:alias/MyAliasName` 
   + **ARN chiave**. Ad esempio: `arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012` 
   + **ID chiave univoco a livello globale.** Ad esempio: `12345678-1234-1234-1234-123456789012` 

   Di seguito è riportata una risposta di esempio:

   ```
   {
       "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 presenza dell'`KmsKeyId`elemento indica che la crittografia per l'archivio dati degli eventi è stata abilitata.

## Disattivazione della crittografia per i file di registro e i file digest utilizzando il AWS CLI
<a name="cloudtrail-log-file-encryption-cli-disable"></a>

Per interrompere la crittografia dei file di registro e dei file digest per un trail, esegui `update-trail` e passa una stringa vuota al parametro: `kms-key-id` 

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

Di seguito è riportata una risposta di esempio:

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

L'assenza del `KmsKeyId` valore indica che la crittografia per i file di log e i file digest non è più abilitata.

**Importante**  
Non è possibile interrompere la crittografia per un archivio dati di eventi.

# Come si AWS CloudTrail usa AWS KMS
<a name="how-kms-works-with-cloudtrail"></a>

Questa sezione descrive come AWS KMS funziona con un CloudTrail trail crittografato con una chiave SSE-KMS.

**Importante**  
AWS CloudTrail [e Amazon S3 supporta solo sistemi simmetrici. AWS KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose-key-spec.html#symmetric-cmks) Non puoi utilizzare una chiave [KMS asimmetrica](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) per crittografare i log. CloudTrail Per informazioni su come determinare se una chiave KMS è o meno asimmetrica, consulta [Identifica i diversi tipi di chiavi](https://docs.aws.amazon.com/kms/latest/developerguide/identify-key-types.html) nella *Guida per gli sviluppatori di AWS Key Management Service *.

Non si paga alcun costo per l'utilizzo delle chiavi quando si CloudTrail leggono o scrivono file di registro crittografati con una chiave SSE-KMS. Tuttavia, si paga un costo per l'utilizzo delle chiavi quando si accede ai file di CloudTrail registro crittografati con una chiave SSE-KMS. [Per informazioni sui AWS KMS prezzi, consulta la sezione Prezzi.AWS Key Management Service](https://aws.amazon.com/kms/pricing/) Per informazioni sui prezzi di CloudTrail , consulta [Prezzi di AWS CloudTrail](https://aws.amazon.com/cloudtrail/pricing/).

## Capire quando la chiave KMS viene utilizzata per il percorso
<a name="cloudtrail-details"></a>

La crittografia dei file di CloudTrail registro AWS KMS si basa sulla funzionalità di Amazon S3 denominata crittografia lato server con un (SSE-KMS). AWS KMS key *Per ulteriori informazioni su SSE-KMS, consulta [Using server-side encryption with AWS KMS keys (SSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) nella Amazon Simple Storage Service User Guide.*

Quando configuri l'uso AWS CloudTrail di SSE-KMS per crittografare i tuoi file di registro e Amazon CloudTrail S3 utilizza il tuo AWS KMS keys quando esegui determinate azioni con tali servizi. Le seguenti sezioni spiegano quando e come tali servizi possono utilizzare la tua chiave KMS e forniscono informazioni aggiuntive da utilizzare per convalidare questa spiegazione.

**Contents**
+ [Ti configuri CloudTrail per crittografare i file di registro con il AWS KMS key](#cloudtrail-details-update-configuration)
+ [CloudTrail inserisce un file di registro nel tuo bucket S3](#cloudtrail-details-put-log-file)
+ [Hai a disposizione un file di log crittografato dal tuo bucket S3](#cloudtrail-details-get-log-file)

### Ti configuri CloudTrail per crittografare i file di registro con il AWS KMS key
<a name="cloudtrail-details-update-configuration"></a>

Quando [aggiorni la CloudTrail configurazione per utilizzare la chiave KMS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/create-kms-key-policy-for-cloudtrail-update-trail.html), CloudTrail invia una [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)richiesta AWS KMS per verificare che la chiave KMS esista e che CloudTrail sia autorizzato a utilizzarla per la crittografia. CloudTrail non utilizza la chiave dati risultante.

La richiesta `GenerateDataKey` include le seguenti informazioni per il [contesto di crittografia](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html):
+ L'[Amazon Resource Name (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) del percorso CloudTrail 
+ L'ARN del bucket S3 e il percorso in cui vengono consegnati i CloudTrail file di registro

La `GenerateDataKey` richiesta genera una voce nei CloudTrail log simile all'esempio seguente. Quando viene visualizzata una voce di registro come questa, è possibile determinare l' AWS KMS `GenerateDataKey`operazione CloudTrail chiamata per una traccia specifica. AWS KMS ha creato la chiave dati con una chiave KMS specifica.

```
{
    "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 inserisce un file di registro nel tuo bucket S3
<a name="cloudtrail-details-put-log-file"></a>

Ogni volta che CloudTrail inserisce un file di registro nel tuo bucket S3, Amazon S3 invia [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)una richiesta AWS KMS a per conto di. CloudTrail In risposta a questa richiesta, AWS KMS genera una chiave dati univoca e quindi invia ad Amazon S3 due copie della chiave dati, una in testo semplice e una crittografata con la chiave KMS specificata. Amazon S3 utilizza la chiave dati in chiaro per crittografare il file di CloudTrail registro e quindi rimuove la chiave dati in testo semplice dalla memoria il prima possibile dopo l'uso. Amazon S3 archivia la chiave dati crittografata come metadati con il file di registro crittografato CloudTrail .

La richiesta `GenerateDataKey` include le seguenti informazioni per il [contesto di crittografia](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html):
+ L'[Amazon Resource Name (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) del percorso CloudTrail 
+ L'ARN dell'oggetto S3 (il CloudTrail file di registro)

Ogni `GenerateDataKey` richiesta genera una voce nei CloudTrail log simile all'esempio seguente. Quando viene visualizzata una voce di registro come questa, è possibile determinare l' AWS KMS `GenerateDataKey`operazione CloudTrail chiamata per una traccia specifica per proteggere un file di registro specifico. AWS KMS ha creato la chiave dati nella chiave KMS specificata, mostrata due volte nella stessa voce di 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"
}
```

### Hai a disposizione un file di log crittografato dal tuo bucket S3
<a name="cloudtrail-details-get-log-file"></a>

Ogni volta che ricevi un file di CloudTrail registro crittografato dal tuo bucket S3, Amazon S3 invia [https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)una richiesta AWS KMS a tuo nome per decrittografare la chiave dati crittografata del file di registro. In risposta a questa richiesta, AWS KMS utilizza la chiave KMS per decrittografare la chiave dati e quindi invia la chiave dati in testo non crittografato ad Amazon S3. Amazon S3 utilizza la chiave dati in testo semplice per decrittografare il file di CloudTrail registro e quindi rimuove la chiave dati in testo semplice dalla memoria il prima possibile dopo l'uso.

La richiesta `Decrypt` include le seguenti informazioni per il [contesto di crittografia](https://docs.aws.amazon.com/kms/latest/developerguide/encrypt_context.html):
+ L'[Amazon Resource Name (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) del percorso CloudTrail 
+ L'ARN dell'oggetto S3 (il CloudTrail file di registro)

Ogni `Decrypt` richiesta genera una voce nei CloudTrail log simile all'esempio seguente. Quando viene visualizzata una voce di registro come questa, è possibile determinare che un ruolo assunto si chiama AWS KMS `Decrypt` operazione per un percorso specifico e un file di registro specifico. AWS KMS ha decrittografato la chiave dati con una chiave KMS specifica.

```
{
    "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"
}
```