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
Che cos'è un CloudWatch set di dati
OpenTelemetry Le metriche (Otel) inviate ad Amazon CloudWatch sono archiviate in una risorsa denominata Dataset. Ognuna Account AWS ha un default set di dati in ogni regione in cui risiedono tutte le metriche 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 la chiave ARN. 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
CloudWatch crittografa sempre i dati del Dataset inattivi. Per impostazione predefinita, CloudWatch crittografa tutti i dati inattivi utilizzando AWS chiavi di proprietà. 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 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 le chiavi gestite dal cliente nella Guida per gli AWS Key Management Service sviluppatori.
Quando si utilizza una chiave gestita dal cliente, si applicano dei AWS KMS costi. Per ulteriori informazioni sui prezzi, consulta Prezzi di AWS Key Management Service
In che modo CloudWatch viene utilizzata una chiave gestita dal cliente per la crittografia dei set di dati
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 si associa una chiave gestita dal cliente al default set di dati, CloudWatch utilizza la chiave per crittografare tutti i dati metrici Otel archiviati in quel set di dati.
CloudWatch utilizza il service principal (cloudwatch.amazonaws.com) direttamente con le autorizzazioni delle policy chiave. CloudWatch non utilizza concessioni o ruoli IAM per accedere alla tua AWS KMS
chiave.
CloudWatch non memorizza nella cache le chiavi di dati. Tuttavia, CloudWatch memorizza kms:Decrypt le risposte nella cache per un massimo di 15 minuti. Le modifiche a una policy chiave possono 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
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 delle policy chiave
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 una protezione sostitutiva confusa.
Il chiamante che associa o utilizza il Dataset deve disporre dell'kms:Decryptautorizzazione, dell'ambito CloudWatch ViaService e del contesto di crittografia, come mostrato nella dichiarazione seguente. AllowCallerDecrypt Sostituisci YourApplicationRole con il ruolo IAM utilizzato per chiamare le API Dataset. CloudWatch
Esempio 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 Guida per gli AWS Key Management Service sviluppatori.
Per associare una chiave gestita dal cliente a un set di dati
Utilizza l'AssociateDatasetKmsKeyAPI 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
È possibile modificare o rimuovere la chiave gestita dal cliente che crittografa i dati del Dataset.
Per modificare la chiave gestita dal cliente
Per sostituire la chiave gestita dal cliente, AssociateDatasetKmsKey richiama con una nuova chiave ARN. Il chiamante deve disporre kms:Decrypt dell'autorizzazione sia per la chiave corrente che per quella nuova. CloudWatch inizia a utilizzare la nuova chiave per le successive operazioni di crittografia.
Nota
Se la chiave attualmente associata è stata eliminata, è pianificata per l'eliminazione, è in attesa di importazione, non è disponibile o è stata disabilitata, non CloudWatch richiede l'kms:Decryptautorizzazione sulla chiave corrente e la rotazione procede. Se la chiave è stata solo disabilitata, valuta la possibilità di riattivarla anziché ruotarla, poiché la riattivazione consente di riprendere la decrittografia dei dati CloudWatch metrici esistenti crittografati con quella chiave.
Per rimuovere la chiave gestita dal cliente
Per rimuovere la chiave gestita dal cliente e ripristinare la crittografia della chiave AWS proprietaria, chiamaDisassociateDatasetKmsKey. Il chiamante deve disporre kms:Decrypt dell'autorizzazione sulla chiave attualmente associata.
aws cloudwatch disassociate-dataset-kms-key \ --dataset-name default
Nota
Se la chiave attualmente associata è stata eliminata, è programmata per l'eliminazione, è in attesa di importazione, non è disponibile o è stata disabilitata, non CloudWatch richiede l'kms:Decryptautorizzazione per quella chiave e la dissociazione procede. Se la chiave è stata solo disabilitata, valuta la possibilità di riattivarla anziché dissociarla, perché la riattivazione consente CloudWatch di riprendere la decrittografia dei dati metrici esistenti.
Importante
Dopo aver dissociato una chiave gestita dal cliente, è prevista una finestra di applicazione di 3 ore durante la quale CloudWatch è ancora richiesta l'autorizzazione sulla chiave associata in precedenza. kms:Decrypt Non disattivare o eliminare la chiave durante questa finestra.
Ripristino da una chiave KMS eliminata o inutilizzabile
Se la chiave KMS gestita dal cliente associata al set di dati viene eliminata, pianificata per l'eliminazione o diventa non disponibile, il set di dati entra in uno stato degradato:
-
CloudWatch non è possibile crittografare i nuovi dati metrici pubblicati nel set di dati e l'inserimento ha esito negativo.
-
CloudWatch non è in grado di decrittografare i dati esistenti crittografati con la chiave inutilizzabile, quindi le operazioni di interrogazione hanno esito negativo.
Le opzioni di ripristino dipendono dallo stato della chiave:
-
La chiave è disattivata: Re-enable la chiave in AWS KMS. Questo è il percorso di ripristino preferito perché CloudWatch può riprendere la decrittografia dei dati metrici esistenti dopo che la chiave è nuovamente attiva.
-
La chiave è in attesa di eliminazione: annulla l'eliminazione della chiave prima della scadenza del periodo di attesa. AWS KMS Dopo che la chiave torna allo stato abilitato, CloudWatch riprende le normali operazioni.
-
La chiave è stata eliminata definitivamente o è altrimenti irrecuperabile: rimuovi l'associazione obsoleta o passa a una nuova chiave (vedi sotto). Tieni presente che i dati esistenti crittografati con la chiave eliminata sono permanentemente illeggibili.
Se la chiave è eliminata definitivamente o altrimenti irrecuperabile, puoi rimuovere l'associazione o passare a una nuova chiave senza dover accedere alla vecchia chiave:
Rimuovi l'associazione di chiavi obsolete
Chiama DisassociateDatasetKmsKey per rimuovere l'associazione con la chiave inutilizzabile. CloudWatch torna alla crittografia a chiave AWS proprietaria per i nuovi dati. I dati esistenti crittografati con la chiave eliminata non sono più leggibili.
aws cloudwatch disassociate-dataset-kms-key \ --dataset-name default
Passa a una nuova chiave
Chiama AssociateDatasetKmsKey con una nuova chiave KMS valida ARN. CloudWatchconvalida la nuova chiave e la associa al set di dati. L'accesso alla chiave associata in precedenza non è richiesto. I dati esistenti crittografati con la chiave eliminata non sono più leggibili, ma i nuovi dati vengono crittografati con la nuova chiave.
aws cloudwatch associate-dataset-kms-key \ --dataset-name default \ --kms-key-arn arn:aws:kms:region:account-id:key/new-key-id
Risposte di errore per chiavi inutilizzabili
Quando si chiama DisassociateDatasetKmsKey or AssociateDatasetKmsKey (percorso di rotazione) e la chiave attualmente associata è inaccessibile, CloudWatch non è necessario accedere a tale chiave e l'operazione procede normalmente. Ciò si applica quando:
-
La chiave è stata eliminata (KMS restituisce
NotFoundException). -
La chiave è nello
UnavailablestatoPendingDeletion,PendingImport, o. -
La chiave è stata disattivata.
Se chiamate queste operazioni quando la chiave è accessibile ma il chiamante non dispone dell'kms:Decryptautorizzazione, l'operazione ha esito negativo e si verifica uno dei seguenti errori. Ogni messaggio di errore include l'ID della richiesta KMS per la risoluzione dei problemi.
ResourceNotFoundException-
La chiave KMS specificata non esiste. Formato del messaggio:
KMS keykey-arndoes not exist. KMS request id:request-id. ValidationException-
La chiave KMS specificata è in uno stato inutilizzabile che non è tollerato in questo percorso di codice. Formato del messaggio:
KMS keykey-arnis in an unusable state:state-description. KMS request id:request-id. AccessDeniedException-
La chiave KMS specificata è disabilitata o il chiamante non dispone dell'autorizzazione. Formato del messaggio:
KMS keykey-arnis disabled. KMS request id:request-id.
Per ulteriori informazioni sugli stati delle chiavi di KMS, consulta Key states of AWS KMS keys nella AWS Key Management Service Developer Guide.
Analizzare l'accesso alle policy chiave
Puoi utilizzare le condizioni della policy chiave per limitare l'accesso alla tua AWS KMS chiave.
- Condizione del contesto di crittografia
-
Usa la chiave
kms:EncryptionContext:aws:cloudwatch:arncondizionale per limitare l'utilizzo della chiave al tuodefaultset di dati."Condition": { "StringEquals": { "kms:EncryptionContext:aws:cloudwatch:arn": "arn:aws:cloudwatch:region:account-id:dataset/default" } } - Protezione sostitutiva confusa
-
Usa le
aws:SourceAccountcondizioniaws:SourceArnand per prevenire attacchi 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:ViaServicecondizionale per limitare l'utilizzo della chiave alle richieste provenienti da CloudWatch."Condition": { "StringEquals": { "kms:ViaService": "cloudwatch.region.amazonaws.com" } }
Monitoraggio CloudWatch dell'interazione con AWS KMS
Puoi utilizzarlo AWS CloudTrail per tracciare le richieste che vengono CloudWatch AWS KMS inviate per tuo conto. Le voci del AWS CloudTrail registro utilizzano l'entità del servizio cloudwatch.amazonaws.com e un ViaService valore dicloudwatch..{region}.amazonaws.com
I seguenti nomi di CloudTrail eventi vengono visualizzati nelle voci di registro per le operazioni di crittografia del CloudWatch set di dati:
GenerateDataKeyEncryptDecryptDescribeKeyReEncrypt
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 nella AWS Key Management Service Developer Guide.