Use EnableKey com um AWS SDKou CLI - AWS Key Management Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Use EnableKey com um AWS SDKou CLI

Os exemplos de código a seguir mostram como usar o EnableKey.

Exemplos de ações são trechos de código de programas maiores e devem ser executados em contexto. É possível ver essa ação em contexto nos seguintes exemplos de código:

.NET
AWS SDK for .NET
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.

using System; using System.Threading.Tasks; using Amazon.KeyManagementService; using Amazon.KeyManagementService.Model; /// <summary> /// Enable an AWS Key Management Service (AWS KMS) key. /// </summary> public class EnableKey { public static async Task Main() { var client = new AmazonKeyManagementServiceClient(); // The identifier of the AWS KMS key to enable. You can use the // key Id or the Amazon Resource Name (ARN) of the AWS KMS key. var keyId = "1234abcd-12ab-34cd-56ef-1234567890ab"; var request = new EnableKeyRequest { KeyId = keyId, }; var response = await client.EnableKeyAsync(request); if (response.HttpStatusCode == System.Net.HttpStatusCode.OK) { // Retrieve information about the key to show that it has now // been enabled. var describeResponse = await client.DescribeKeyAsync(new DescribeKeyRequest { KeyId = keyId, }); Console.WriteLine($"{describeResponse.KeyMetadata.KeyId} - state: {describeResponse.KeyMetadata.KeyState}"); } } }
  • Para API obter detalhes, consulte EnableKeyem AWS SDK for .NET APIReferência.

CLI
AWS CLI

Para habilitar uma KMS chave

O exemplo de enable-key a seguir habilita uma chave gerenciada pelo cliente. Você pode usar um comando como esse para ativar uma KMS chave que você desativou temporariamente usando o disable-key comando. Você também pode usá-lo para ativar uma KMS chave que está desativada porque foi programada para exclusão e a exclusão foi cancelada.

Para especificar a KMS chave, use o key-id parâmetro. Este exemplo usa um valor de ID de chave, mas você pode usar um ID de chave ou ARN valor de chave neste comando.

Antes de executar esse comando, substitua o ID da chave de exemplo por um ID válido.

aws kms enable-key \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab

Este comando não produz saída. Para verificar se a KMS chave está ativada, use o describe-key comando. Consulte os valores dos campos KeyState e Enabled na saída describe-key.

Para obter mais informações, consulte Ativando e desativando chaves no AWS Guia do desenvolvedor do serviço de gerenciamento de chaves.

  • Para API obter detalhes, consulte EnableKeyem AWS CLI Referência de comando.

Java
SDKpara Java 2.x
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.

/** * Asynchronously enables the specified key. * * @param keyId the ID of the key to enable * @return a {@link CompletableFuture} that completes when the key has been enabled */ public CompletableFuture<Void> enableKeyAsync(String keyId) { EnableKeyRequest enableKeyRequest = EnableKeyRequest.builder() .keyId(keyId) .build(); CompletableFuture<EnableKeyResponse> responseFuture = getAsyncClient().enableKey(enableKeyRequest); responseFuture.whenComplete((response, exception) -> { if (exception == null) { logger.info("Key with ID [{}] has been enabled.", keyId); } else { if (exception instanceof KmsException kmsEx) { throw new RuntimeException("KMS error occurred while enabling key: " + kmsEx.getMessage(), kmsEx); } else { throw new RuntimeException("An unexpected error occurred while enabling key: " + exception.getMessage(), exception); } } }); return responseFuture.thenApply(response -> null); }
  • Para API obter detalhes, consulte EnableKeyem AWS SDK for Java 2.x APIReferência.

Kotlin
SDKpara Kotlin
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.

suspend fun enableKey(keyIdVal: String?) { val request = EnableKeyRequest { keyId = keyIdVal } KmsClient { region = "us-west-2" }.use { kmsClient -> kmsClient.enableKey(request) println("$keyIdVal was successfully enabled.") } }
  • Para API obter detalhes, consulte EnableKeyem AWS SDKpara referência ao KotlinAPI.

Python
SDKpara Python (Boto3)
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.

class KeyManager: def __init__(self, kms_client): self.kms_client = kms_client self.created_keys = [] def enable_disable_key(self, key_id): """ Disables and then enables a key. Gets the key state after each state change. """ answer = input("Do you want to disable and then enable that key (y/n)? ") if answer.lower() == "y": try: self.kms_client.disable_key(KeyId=key_id) key = self.kms_client.describe_key(KeyId=key_id)["KeyMetadata"] except ClientError as err: logging.error( "Couldn't disable key '%s'. Here's why: %s", key_id, err.response["Error"]["Message"], ) else: print(f"AWS KMS says your key state is: {key['KeyState']}.") try: self.kms_client.enable_key(KeyId=key_id) key = self.kms_client.describe_key(KeyId=key_id)["KeyMetadata"] except ClientError as err: logging.error( "Couldn't enable key '%s'. Here's why: %s", key_id, err.response["Error"]["Message"], ) else: print(f"AWS KMS says your key state is: {key['KeyState']}.")
  • Para API obter detalhes, consulte EnableKeyem AWS SDKpara referência em Python (Boto3). API

Para obter uma lista completa de AWS SDKguias do desenvolvedor e exemplos de código, consulteO uso do AWS KMS com um AWS SDK. Este tópico também inclui informações sobre como começar e detalhes sobre SDK versões anteriores.