Utilizzare ScheduleKeyDeletion con un AWS SDKo CLI - AWS Key Management Service

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à.

Utilizzare ScheduleKeyDeletion con un AWS SDKo CLI

I seguenti esempi di codice mostrano come utilizzareScheduleKeyDeletion.

Gli esempi di operazioni sono estratti di codice da programmi più grandi e devono essere eseguiti nel contesto. È possibile visualizzare questa operazione nel contesto nei seguenti esempi di codice:

CLI
AWS CLI

Per pianificare l'eliminazione di una KMS chiave gestita dal cliente.

L'schedule-key-deletionesempio seguente pianifica l'eliminazione della KMS chiave gestita dal cliente specificata in 15 giorni.

Il --key-id parametro identifica la KMS chiave. Questo esempio utilizza un ARN valore chiave, ma è possibile utilizzare l'ID della chiave o la ARN KMS chiave. Il --pending-window-in-days parametro specifica la durata del periodo di attesa di 7-30 giorni. Per impostazione predefinita, il periodo di attesa è di 30 giorni. Questo esempio specifica un valore pari a 15, che indica AWS per eliminare definitivamente la KMS chiave 15 giorni dopo il completamento del comando.

aws kms schedule-key-deletion \ --key-id arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab \ --pending-window-in-days 15

La risposta include la chiaveARN, lo stato della chiave, il periodo di attesa (PendingWindowInDays) e la data di eliminazione in ora Unix. Per visualizzare la data di cancellazione nell'ora locale, utilizzate il AWS KMSconsole. KMSle chiavi nello stato della PendingDeletion chiave non possono essere utilizzate nelle operazioni crittografiche.

{ "KeyId": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "DeletionDate": "2022-06-18T23:43:51.272000+00:00", "KeyState": "PendingDeletion", "PendingWindowInDays": 15 }

Per ulteriori informazioni, vedere Eliminazione delle chiavi nella AWS Guida per gli sviluppatori del servizio di gestione delle chiavi.

Java
SDKper Java 2.x
Nota

C'è di più su. GitHub Trova l'esempio completo e scopri come configurare ed eseguire in AWS Repository di esempi di codice.

/** * Deletes a KMS key asynchronously. * * <p><strong>Warning:</strong> Deleting a KMS key is a destructive and potentially dangerous operation. * When a KMS key is deleted, all data that was encrypted under the KMS key becomes unrecoverable. * This means that any files, databases, or other data that were encrypted using the deleted KMS key * will become permanently inaccessible. Exercise extreme caution when deleting KMS keys.</p> * * @param keyId the ID of the KMS key to delete * @return a {@link CompletableFuture} that completes when the key deletion is scheduled */ public CompletableFuture<Void> deleteKeyAsync(String keyId) { ScheduleKeyDeletionRequest deletionRequest = ScheduleKeyDeletionRequest.builder() .keyId(keyId) .pendingWindowInDays(7) .build(); return getAsyncClient().scheduleKeyDeletion(deletionRequest) .thenRun(() -> { logger.info("Key {} will be deleted in 7 days", keyId); }) .exceptionally(throwable -> { throw new RuntimeException("Failed to schedule key deletion for key ID: " + keyId, throwable); }); }
Python
SDKper Python (Boto3)
Nota

C'è di più su. GitHub Trova l'esempio completo e scopri come configurare ed eseguire in AWS Repository di esempi di codice.

class KeyManager: def __init__(self, kms_client): self.kms_client = kms_client self.created_keys = [] def delete_keys(self, keys): """ Deletes a list of keys. Warning: Deleting a KMS key is a destructive and potentially dangerous operation. When a KMS key is deleted, all data that was encrypted under the KMS key is unrecoverable. :param keys: The list of keys to delete. """ print(""" Warning: Deleting a KMS key is a destructive and potentially dangerous operation. When a KMS key is deleted, all data that was encrypted under the KMS key is unrecoverable. """) answer = input("Do you want to delete these keys (y/n)? ") if answer.lower() == "y": window = 7 for key in keys: try: self.kms_client.schedule_key_deletion( KeyId=key["KeyId"], PendingWindowInDays=window ) except ClientError as err: logging.error( "Couldn't delete key %s. Here's why: %s", key["KeyId"], err.response["Error"]["Message"], ) else: print( f"Key {key['KeyId']} scheduled for deletion in {window} days." )

Per un elenco completo di AWS SDKguide per sviluppatori ed esempi di codice, vediUtilizzo AWS KMS con un AWS SDK. Questo argomento include anche informazioni su come iniziare e dettagli sulle SDK versioni precedenti.