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à.
Determina l'utilizzo passato di una chiave KMS
Per scopi di monitoraggio e controllo, potresti voler sapere come è stata utilizzata una chiave KMS in passato. Ad esempio, potresti voler determinare se una chiave KMS è ancora utilizzata attivamente prima di disabilitarla o pianificarne l'eliminazione, oppure identificare le chiavi inutilizzate nel tuo account. Le seguenti strategie possono aiutarti a determinare l'utilizzo passato di una chiave KMS.
avvertimento
Queste strategie per determinare l'utilizzo passato sono efficaci solo per AWS i principali e AWS KMS le operazioni. Non sono in grado di rilevare l'uso della chiave che non comporti chiamate API a AWS KMS. Dopo che una chiave dati è stata generata da una chiave KMS simmetrica, il suo successivo utilizzo per la crittografia locale o la decrittografia all'esterno non AWS KMS si riflette nelle ultime informazioni di utilizzo. Analogamente, queste strategie non sono in grado di rilevare l'uso della chiave pubblica di una chiave KMS asimmetrica all'esterno. AWS KMS Per informazioni dettagliate sui rischi particolari derivanti dall'eliminazione delle chiavi KMS asimmetriche utilizzate per la crittografia a chiave pubblica, inclusa la creazione di testi cifrati che non possono essere decrittati, consulta Deleting asymmetric KMS keys.
Argomenti
Esamina le autorizzazioni chiave del KMS per determinare l'ambito del potenziale utilizzo
Determinare chi o cosa ha attualmente accesso a una chiave KMS può aiutarti a determinare in che misura la chiave KMS è utilizzata e se è ancora necessaria. Per determinare chi o cosa ha attualmente accesso a una chiave KMS, consulta. Determinare l'accesso a AWS KMS keys
Esamina l'ultima operazione crittografica eseguita con una chiave KMS
AWS KMS fornisce informazioni sull'utilizzo dell'ultima operazione crittografica eseguita con successo con ciascuna chiave KMS insieme all'ID evento associato CloudTrail . Questo può facilitare il processo di identificazione delle chiavi KMS non utilizzate. Puoi anche utilizzare la chiave kms: TrailingDaysWithoutKeyUsage condition key nelle policy chiave per evitare che le chiavi usate di recente vengano disattivate accidentalmente o programmate per l'eliminazione.
È possibile visualizzare l'ultima operazione crittografica eseguita con successo con una chiave KMS utilizzando l'API,, o. Console di gestione AWS AWS CLI AWS KMS
Nota
Alcuni AWS servizi creano risorse che dipendono da una chiave KMS per la protezione dei dati, ma non richiamano frequentemente operazioni crittografiche su tale chiave. Ad esempio, il servizio Amazon EC2 richiede AWS KMS di decrittografare la chiave di dati per un volume Amazon EBS crittografato solo quando il volume è collegato a un'istanza. In questi casi, non devi fare affidamento solo sulle ultime informazioni di utilizzo per determinare se una chiave KMS può essere eliminata. Se la chiave KMS che protegge un volume Amazon EBS viene eliminata, non si verificherà alcuna interruzione del volume Amazon EBS già collegato, ma i successivi tentativi di collegare quel volume Amazon EBS crittografato a un'altra istanza Amazon EC2 fallirebbero.
Comprensione del periodo di monitoraggio dell'utilizzo
AWS KMS tiene traccia solo dell'ultima operazione crittografica eseguita con successo con ciascuna chiave KMS. Può verificarsi un ritardo massimo di un'ora tra il momento in cui si verifica un'operazione di crittografia e il momento in cui viene registrato l'utilizzo.
Quando si controllano le ultime informazioni sull'utilizzo di una chiave KMS, la risposta include una data di inizio del monitoraggio. TrackingStartDateÈ la data a partire dalla quale è AWS KMS iniziata la registrazione dell'attività crittografica per quella chiave. Usa questa data insieme alla data di creazione della chiave per determinarne la cronologia di utilizzo confrontando la data di creazione della chiave con la data di inizio del monitoraggio:
-
Se sono presenti le informazioni sull'ultimo utilizzo, la chiave è stata utilizzata per un'operazione di crittografia dall'inizio del tracciamento. La risposta include il tipo di operazione, il timestamp e l'ID evento associato AWS CloudTrail .
-
Se le informazioni sull'ultimo utilizzo sono vuote, nella chiave non sono state registrate operazioni crittografiche dall'inizio del tracciamento. Confronta la data di creazione della chiave con la
TrackingStartDateper determinare cosa significa:-
Se la chiave è stata creata il o dopo il
TrackingStartDate, non è stata utilizzata per un'operazione di crittografia da quando è stata creata. -
Se la chiave è stata creata prima del
TrackingStartDate, non vi è alcuna registrazione della chiave utilizzata dall'inizio del tracciamento. Tuttavia, la chiave potrebbe essere stata utilizzata prima dell'inizio del tracciamento. Per determinare se la chiave è stata utilizzata in precedenza, esamina i AWS CloudTrail registri precedenti.
-
avvertimento
Non fate affidamento esclusivamente sulle informazioni sull'ultimo utilizzo per eliminare le chiavi inutilizzate. Invece, disattivate prima la chiave e controllate AWS CloudTrail le DisabledException voci, che indicano i tentativi di utilizzo della chiave mentre la chiave è disattivata. Questo aiuta a identificare potenziali dipendenze e guasti del carico di lavoro. AWS CloudTrail rimane la fonte autorevole per tutte le chiamate API effettuate alla tua chiave.
Operazioni crittografiche tracciate
Solo le seguenti operazioni crittografiche riuscite vengono tracciate e registrate per riportare le ultime informazioni sull'utilizzo. Non-cryptographic le operazioni sono escluse.
-
Decrypt -
DeriveSharedSecret -
Encrypt -
GenerateDataKey -
GenerateDataKeyPair -
GenerateDataKeyPairWithoutPlaintext -
GenerateDataKeyWithoutPlaintext -
GenerateMac -
ReEncrypt -
Sign -
Verify -
VerifyMac
Altre considerazioni
Quando utilizzi le informazioni sull'utilizzo, tieni presente quanto segue:
-
Multi-Region Chiavi KMS: per le chiavi KMS multiregionali, le chiavi primarie e di replica tengono traccia delle informazioni sull'ultimo utilizzo in modo indipendente. Ogni chiave in un set di chiavi multiregionale mantiene le proprie informazioni sull'ultimo utilizzo.
-
ReEncrypt operazioni: l'
ReEncryptoperazione utilizza due chiavi: una chiave sorgente per la decrittografia e una chiave di destinazione per la crittografia. Le informazioni sull'ultimo utilizzo vengono registrate indipendentemente per entrambe le chiavi, ciascuna con l'ID CloudTrail evento dell'account del rispettivo proprietario della chiave.
È possibile visualizzare le ultime informazioni sull'utilizzo utilizzando i seguenti metodi:
È possibile visualizzare l'ultima operazione crittografica eseguita con successo con una chiave KMS nella pagina dei dettagli di ciascuna chiave KMS. Per le procedure su come visualizzare la pagina dei dettagli di una chiave KMS, consulta. Accedi ed elenca i dettagli chiave KMS
L'GetKeyLastUsageoperazione restituisce informazioni sull'utilizzo dell'ultima operazione crittografica eseguita con la chiave KMS specificata. Per identificare la chiave KMS, utilizzare l'ID della chiave o l'ARN della chiave.
Ad esempio, la seguente chiamata per GetKeyLastUsage recuperare le informazioni sull'utilizzo di una chiave KMS con l'ID della chiave. 1234abcd-12ab-34cd-56ef-1234567890ab
$ aws kms get-key-last-usage --key-id "1234abcd-12ab-34cd-56ef-1234567890ab" { "KeyCreationDate": 1773253425.56, "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "TrackingStartDate": 1773253425.56, "KeyLastUsage": { "Timestamp": 1773253497.0, "Operation": "Encrypt", "KmsRequestId": "040cce3e-9ef3-4651-b8cf-e47c9bafdc9b", "CloudTrailEventId": "2cfd5892-ea8c-4342-ad49-4b9594b06a8b" } }
Al contrario, la seguente chiamata a non GetKeyLastUsage rivela alcuna informazione sull'utilizzo di una chiave KMS con l'ID della chiave. 0987dcba-09fe-87dc-65ba-ab0987654321
$ aws kms get-key-last-usage --key-id "0987dcba-09fe-87dc-65ba-ab0987654321" { "KeyCreationDate": 1672531200.0, "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "TrackingStartDate": 1773253425.56, "KeyLastUsage": {} }
Esamina AWS CloudTrail registri per verificare l'utilizzo passato
Puoi utilizzare la cronologia di utilizzo di una chiave KMS per determinare se hai testi cifrati crittografati con una particolare chiave KMS.
Tutte le attività AWS KMS delle API vengono registrate nei file di registro. AWS CloudTrail Se hai creato un CloudTrail percorso nella regione in cui si trova la tua chiave KMS, puoi esaminare i tuoi file di CloudTrail registro per visualizzare una cronologia di tutte le attività AWS KMS API per una particolare chiave KMS. Se un trail non è disponibile, è comunque possibile visualizzare gli eventi recenti nella cronologia degli eventi CloudTrail . Per dettagli sulle modalità di AWS KMS utilizzo CloudTrail, consulta. Registrazione dei log AWS KMS Chiamate API con AWS CloudTrail
Gli esempi seguenti mostrano le voci di CloudTrail registro generate quando viene utilizzata una chiave KMS per proteggere un oggetto archiviato in Amazon Simple Storage Service (Amazon S3). In questo esempio, l'oggetto viene caricato su Amazon S3 utilizzando la protezione dei dati mediante crittografia lato server con chiavi KMS (). SSE-KMS Quando carichi un oggetto su Amazon S3 con SSE-KMS, specifichi la chiave KMS da utilizzare per proteggere l'oggetto. Amazon S3 utilizza l' AWS KMS GenerateDataKeyoperazione per richiedere una chiave dati univoca per l'oggetto e questo evento di richiesta viene registrato CloudTrail con una voce simile alla seguente:
{ "eventVersion": "1.02", "userIdentity": { "type": "AssumedRole", "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user", "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2015-09-10T23:12:48Z" }, "sessionIssuer": { "type": "Role", "principalId": "AROACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admins", "accountId": "111122223333", "userName": "Admins" } }, "invokedBy": "internal.amazonaws.com" }, "eventTime": "2015-09-10T23:58:18Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "internal.amazonaws.com", "userAgent": "internal.amazonaws.com", "requestParameters": { "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"}, "keySpec": "AES_256", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "responseElements": null, "requestID": "cea04450-5817-11e5-85aa-97ce46071236", "eventID": "80721262-21a5-49b9-8b63-28740e7ce9c9", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333" }], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
Quando successivamente scarichi questo oggetto da Amazon S3, Amazon S3 invia una Decrypt richiesta per AWS KMS decrittografare la chiave dati dell'oggetto utilizzando la chiave KMS specificata. Quando lo fai, i tuoi file di CloudTrail registro includono una voce simile alla seguente:
{ "eventVersion": "1.02", "userIdentity": { "type": "AssumedRole", "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user", "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2015-09-10T23:12:48Z" }, "sessionIssuer": { "type": "Role", "principalId": "AROACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admins", "accountId": "111122223333", "userName": "Admins" } }, "invokedBy": "internal.amazonaws.com" }, "eventTime": "2015-09-10T23:58:39Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "internal.amazonaws.com", "userAgent": "internal.amazonaws.com", "requestParameters": { "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"}}, "responseElements": null, "requestID": "db750745-5817-11e5-93a6-5b87e27d91a0", "eventID": "ae551b19-8a09-4cfc-a249-205ddba330e3", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333" }], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
Esaminando queste voci di registro, potresti essere in grado di determinare l'utilizzo passato di una chiave KMS specifica e ciò potrebbe aiutarti a decidere se eliminarla o meno.
Per vedere altri esempi di come appare l'attività delle AWS KMS API nei tuoi file di CloudTrail registro, vai aRegistrazione dei log AWS KMS Chiamate API con AWS CloudTrail. Per ulteriori informazioni, CloudTrail consulta la Guida per AWS CloudTrail l'utente.
Considerazioni sui costi per le domande CloudTrail
Quando interroghi CloudTrail i log utilizzando Amazon CloudWatch Logs Insights, Amazon CloudWatch Logs Insights ti addebita in base alla quantità di dati scansionati. Interrogazioni di grandi dimensioni e illimitate possono comportare costi inaspettatamente elevati. Per gestire i costi, assegna ogni richiesta all'intervallo di tempo pertinente più ristretto. Filtra per nome dell'evento, ARN della risorsa o ID principale. Prima di tentare di eseguire una query, valuta la possibilità di esaminare innanzitutto l'ultima operazione crittografica eseguita con successo con una chiave KMS per evitare costi di interrogazione non necessari. Puoi anche impostare avvisi di budget in Budgets per rilevare un volume di query imprevisto. AWS Per ulteriori informazioni sui prezzi, consulta Amazon CloudWatch Pricing