

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 inattiva per le OpenTelemetry metriche
<a name="cmk-encryption"></a>

## Che cos'è un CloudWatch set di dati
<a name="cmk-encryption-dataset-overview"></a>

OpenTelemetry Le metriche (Otel) che invii ad Amazon CloudWatch sono archiviate in una risorsa chiamata Dataset. Ognuno Account AWS ha un `default` set di dati in ogni regione in cui risiedono tutte le metriche di Otel. Il `default` set di dati è l'unico set di dati supportato: non è possibile creare set di dati aggiuntivi.

I set di dati possono essere crittografati e contrassegnati come le altre risorse. AWS Il set di dati ARN ha il seguente formato:

`arn:{{{partition}}}:cloudwatch:{{{region}}}:{{{account-id}}}:dataset/default`

Per visualizzare l'attuale configurazione di crittografia del set di dati, utilizza l'API: `GetDataset`

```
aws cloudwatch get-dataset \
    --dataset-identifier default
```

Se al set di dati è associata una chiave gestita dal cliente, la risposta include l'ARN chiave. Se non è associata alcuna chiave gestita dal cliente, il set di dati viene crittografato con una AWS chiave proprietaria.

## Opzioni per la crittografia a riposo
<a name="cmk-encryption-options"></a>

CloudWatch crittografa sempre i dati del set di dati a riposo. Per impostazione predefinita, CloudWatch crittografa tutti i dati inattivi utilizzando AWS chiavi proprietarie. Non è necessario intraprendere alcuna azione per proteggere i dati utilizzando chiavi AWS di proprietà. Per ulteriori informazioni, consulta la pagina [chiavi di proprietà di AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) nella Guida per gli sviluppatori di AWS Key Management Service .

Se desideri gestire le chiavi utilizzate per crittografare i dati del tuo Dataset, puoi utilizzare una chiave gestita dal cliente in AWS Key Management Service ()AWS KMS. Per ulteriori informazioni, consulta [Customer managed keys](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) nella AWS Key Management Service Developer Guide.

Quando si utilizza una chiave gestita dal cliente, vengono applicati dei AWS KMS costi. Per ulteriori informazioni sui prezzi, consulta [Prezzi di AWS Key Management Service](https://aws.amazon.com/kms/pricing/).

## In che modo CloudWatch utilizza una chiave gestita dal cliente per la crittografia dei set di dati
<a name="cmk-encryption-how-it-works"></a>

**Importante**  
La crittografia a chiave gestita dal cliente si applica al `default` set di dati. Il `default` set di dati è l'unico set di dati supportato: non è possibile creare set di dati aggiuntivi.

Quando associ una chiave gestita dal cliente al `default` set di dati, CloudWatch utilizza la chiave per crittografare tutti i dati metrici Otel memorizzati in quel set di dati.

CloudWatch utilizza il service principal (`cloudwatch.amazonaws.com`) direttamente con le autorizzazioni delle politiche chiave. CloudWatch non utilizza sovvenzioni o ruoli IAM per accedere alla tua AWS KMS chiave.

CloudWatch non memorizza nella cache le chiavi di dati. Tuttavia, CloudWatch memorizza nella cache `kms:Decrypt` le risposte per un massimo di 15 minuti. Le modifiche a una politica chiave potrebbero richiedere fino a 15 minuti per avere effetto.

CloudWatch utilizza il seguente contesto di crittografia per tutte le operazioni AWS KMS crittografiche:
+ Chiave: `aws:cloudwatch:arn`
+ Valore: `arn:{{{partition}}}:cloudwatch:{{{region}}}:{{{account-id}}}:dataset/default`

## Configurazione di una chiave gestita dal cliente per Dataset
<a name="cmk-encryption-key-requirements"></a>

La AWS KMS chiave utilizzata con CloudWatch Dataset deve soddisfare i seguenti requisiti:
+ La chiave deve essere una chiave di crittografia simmetrica (SYMMETRIC\_DEFAULT) con utilizzo della chiave ENCRYPT\_DECRYPT. Le chiavi asimmetriche non sono supportate.
+ Multi-Region le chiavi non sono supportate.
+ La chiave deve essere nella Regione AWS stessa del Dataset.
+ È necessario specificare la chiave come chiave ARN completamente qualificata. Gli alias e gli ID delle chiavi non sono supportati.

## Configurazione delle autorizzazioni relative alle policy chiave
<a name="cmk-encryption-permissions"></a>

Per utilizzare una chiave gestita dal cliente con CloudWatch Dataset, la policy chiave deve concedere l' CloudWatchautorizzazione all'uso della chiave. Il seguente esempio di politica chiave concede CloudWatch le autorizzazioni necessarie e include la protezione confusa dei deputati.

Il chiamante che associa o utilizza il Dataset deve disporre dell'`kms:Decrypt`autorizzazione, dell'ambito CloudWatch `ViaService` e del contesto di crittografia, come illustrato nella dichiarazione seguente. `AllowCallerDecrypt` Sostituisci {{YourApplicationRole}} con il ruolo IAM utilizzato per chiamare le API Dataset. CloudWatch 

**Example Politica chiave per la crittografia dei set di dati CloudWatch**  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowCloudWatchDatasetDescribeKey",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudwatch.amazonaws.com"
            },
            "Action": "kms:DescribeKey",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{account-id}}"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:cloudwatch:{{region}}:{{account-id}}:dataset/default"
                }
            }
        },
        {
            "Sid": "AllowCloudWatchDatasetEncryption",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudwatch.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{account-id}}",
                    "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:{{region}}:{{account-id}}:dataset/default"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:cloudwatch:{{region}}:{{account-id}}:dataset/default"
                }
            }
        },
        {
            "Sid": "AllowCallerDecrypt",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::{{account-id}}:role/{{YourApplicationRole}}"
            },
            "Action": "kms:Decrypt",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "kms:ViaService": "cloudwatch.{{region}}.amazonaws.com",
                    "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:{{region}}:{{account-id}}:dataset/default"
                }
            }
        }
    ]
}
```

Sostituisci {{account-id}} e {{region}} con il tuo valore.

Per ulteriori informazioni sulle politiche chiave, consulta [le politiche chiave AWS KMS nella](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) Guida per gli AWS Key Management Service sviluppatori.

## Per associare una chiave gestita dal cliente a un set di dati
<a name="cmk-encryption-associate"></a>

Utilizza l'`AssociateDatasetKmsKey`API per associare una chiave gestita dal cliente a un set di dati. È necessario specificare `default` come identificatore del set di dati.

Per associare una chiave gestita dal cliente utilizzando la AWS CLI, esegui il comando seguente:

```
aws cloudwatch associate-dataset-kms-key \
    --dataset-name default \
    --kms-key-arn arn:aws:kms:{{region}}:{{account-id}}:key/{{key-id}}
```

## Modifica o rimozione della configurazione di crittografia
<a name="cmk-encryption-change-disassociate"></a>

Puoi modificare o rimuovere la chiave gestita dal cliente che crittografa i dati del tuo Dataset.

### Per modificare la chiave gestita dal cliente
<a name="cmk-encryption-change-key"></a>

Per sostituire la chiave gestita dal cliente, `AssociateDatasetKmsKey` richiama con una nuova chiave ARN. Il chiamante deve avere `kms:Decrypt` l'autorizzazione sia per la chiave corrente che per quella nuova. CloudWatch inizia a utilizzare la nuova chiave per le successive operazioni di crittografia.

### Per rimuovere la chiave gestita dal cliente
<a name="cmk-encryption-disassociate"></a>

Per rimuovere la chiave gestita dal cliente e ripristinare la crittografia a chiave AWS proprietaria, chiama`DisassociateDatasetKmsKey`. Il chiamante deve disporre `kms:Decrypt` dell'autorizzazione sulla chiave attualmente associata.

```
aws cloudwatch disassociate-dataset-kms-key \
    --dataset-name default
```

**Importante**  
Dopo aver dissociato una chiave gestita dal cliente, c'è un periodo di applicazione di 3 ore durante il quale è CloudWatch ancora necessaria l'`kms:Decrypt`autorizzazione sulla chiave precedentemente associata. Non disattivate o eliminate la chiave durante questa finestra.

Se la chiave è disattivata, è necessario riattivarla prima di poterla dissociare dal Dataset.

## Definizione dell'accesso alle politiche chiave
<a name="cmk-encryption-scoping-access"></a>

È possibile utilizzare le condizioni della politica chiave per limitare l'accesso alla AWS KMS chiave.

Condizione del contesto di crittografia  
Utilizza la chiave di `kms:EncryptionContext:aws:cloudwatch:arn` condizione per limitare l'utilizzo della chiave al tuo `default` set di dati.  

```
"Condition": {
    "StringEquals": {
        "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:{{region}}:{{account-id}}:dataset/default"
    }
}
```

Vice protezione confusa  
Usa le `aws:SourceAccount` condizioni `aws:SourceArn` and per prevenire attacchi da parte di agenti confusi tra account diversi.  

```
"Condition": {
    "StringEquals": {
        "aws:SourceAccount": "{{account-id}}"
    },
    "ArnLike": {
        "aws:SourceArn": "arn:aws:cloudwatch:{{region}}:{{account-id}}:dataset/default"
    }
}
```

kms: condizione ViaService   
Usa la chiave `kms:ViaService` condition per limitare l'utilizzo della chiave alle richieste che provengono da CloudWatch.  

```
"Condition": {
    "StringEquals": {
        "kms:ViaService": "cloudwatch.{{region}}.amazonaws.com"
    }
}
```

## Monitoraggio CloudWatch dell'interazione con AWS KMS
<a name="cmk-encryption-monitoring"></a>

Puoi utilizzarlo AWS CloudTrail per tenere traccia delle richieste CloudWatch inviate AWS KMS a per tuo conto. Le voci di AWS CloudTrail registro utilizzano l'entità del servizio `cloudwatch.amazonaws.com` e `ViaService` il valore di`cloudwatch.{{{region}}}.amazonaws.com`.

I seguenti nomi di CloudTrail eventi vengono visualizzati nelle voci di registro per le operazioni di crittografia CloudWatch dei set di dati:
+ `GenerateDataKey`
+ `Encrypt`
+ `Decrypt`
+ `DescribeKey`
+ `ReEncrypt`

Ogni voce di registro include il contesto di crittografia, che è possibile utilizzare per identificare lo specifico set di dati a cui si applica l'operazione.

Per ulteriori informazioni sul monitoraggio dell'utilizzo delle AWS KMS chiavi, consulta [Monitoring AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/monitoring-overview.html) nella AWS Key Management Service Developer Guide.