Conectar um repositório de chaves externo - AWS Key Management Service

Conectar um repositório de chaves externo

Quando seu armazenamento de chaves externas está conectado ao proxy de armazenamento de chaves externas, é possível criar chaves do KMS no armazenamento de chaves externas e usar chaves do KMS existentes em operações de criptografia.

O processo que conecta um armazenamento de chaves externas ao proxy de armazenamento de chaves externas difere com base na conectividade do armazenamento de chaves externas.

A operação de conexão inicia o processo de conexão do armazenamento de chaves personalizado, mas conectar um armazenamento de chaves externas ao proxy externo leva aproximadamente cinco minutos. Uma resposta bem-sucedida da operação de conexão não indica que o armazenamento de chaves externas esteja conectado. Para confirmar que a conexão foi bem-sucedida, use o console do AWS KMS ou a operação DescribeCustomKeyStores para visualizar o estado da conexão do armazenamento de chaves externas.

Quando o estado da conexão é FAILED, um código de erro de conexão é exibido no console do AWS KMS e adicionado à resposta DescribeCustomKeyStore. Para obter ajuda na interpretação dos códigos de erro de conexão, consulte Códigos de erro de conexão para armazenamentos de chaves externas.

Conectar e reconectar ao repositório de chaves externo

Você pode conectar ou reconectar seu repositório de chaves externo usando o console do AWS KMS ou a operação ConnectCustomKeyStore.

Você pode usar o console do AWS KMS para conectar um armazenamento de chaves externas ao proxy de armazenamento de chaves externas.

  1. Faça login no Console de gerenciamento da AWS e abra o console do AWS Key Management Service (AWS KMS) em https://console.aws.amazon.com/kms.

  2. Para alterar a Região da AWS, use o seletor de regiões no canto superior direito da página.

  3. No painel de navegação, selecione Custom key stores (Armazenamentos de chaves personalizados), External key stores (Armazenamentos de chaves externas).

  4. Escolha a linha do armazenamento de chaves externas que deseja conectar.

    Se o estado de conexão do armazenamento de chaves externas for FAILED, você deverá desconectar o armazenamento de chaves externas antes de conectá-lo.

  5. No menu Key store actions (Ações do armazenamento de chaves), escolha Connect (Conectar).

O processo de conexão normalmente leva cerca de cinco minutos para ser concluído. Quando a operação é concluída, o estado da conexão é alterado para CONNECTED.

Se o estado da conexão for Failed, passe o mouse sobre o estado da conexão para ver o código de erro da conexão, que explica a causa do erro. Para obter ajuda para responder a um código de erro de conexão, consulte Códigos de erro de conexão para armazenamentos de chaves externas. Para conectar um armazenamento de chaves externas com o estado de conexão Failed, você deve primeiro desconectar o armazenamento de chaves personalizado.

Para conectar um armazenamento de chaves externas desconectado, use a operação ConnectCustomKeyStore.

Antes de se conectar, o estado da conexão do armazenamento de chaves externas deve ser DISCONNECTED. Se o estado da conexão atual for FAILED, desconecte o armazenamento de chaves externas e conecte-o novamente.

O processo de conexão leva cerca de cinco minutos para ser concluído. A menos que ocorra uma falha rapidamente, ConnectCustomKeyStore retornará uma resposta HTTP 200 e um objeto JSON sem propriedades. No entanto, essa resposta inicial não indica que a conexão foi bem-sucedida. Para determinar se o armazenamento de chaves externas está conectado, consulte o estado da conexão na resposta de DescribeCustomKeyStores.

Os exemplos nesta seção usam a AWS Command Line Interface (AWS CLI), mas você pode usar qualquer linguagem de programação compatível.

Para identificar o armazenamento de chaves externas, use o ID do armazenamento de chaves personalizado. Você pode encontrar o ID na página Armazenamentos de chaves personalizados no console ou usando a operação DescribeCustomKeyStores. Antes de executar esse exemplo, substitua o ID de exemplo por um válido.

$ aws kms connect-custom-key-store --custom-key-store-id cks-1234567890abcdef0

A operação ConnectCustomKeyStore não retorna ConnectionState na resposta. Para verificar se o armazenamento de chaves externas está conectado, use a operação DescribeCustomKeyStores. Por padrão, essa operação retorna todos os armazenamentos de chaves personalizados em sua conta e região. No entanto, você pode usar o parâmetro CustomKeyStoreId ou CustomKeyStoreName (mas não ambos) para limitar a resposta para determinados armazenamentos de chaves personalizados. Um valor ConnectionState de CONNECTED indica que o armazenamento de chaves externas está conectado ao proxy de armazenamento de chaves externas.

$ aws kms describe-custom-key-stores --custom-key-store-name ExampleXksVpc { "CustomKeyStores": [ { "CustomKeyStoreId": "cks-9876543210fedcba9", "CustomKeyStoreName": "ExampleXksVpc", "ConnectionState": "CONNECTED", "CreationDate": "2022-12-13T18:34:10.675000+00:00", "CustomKeyStoreType": "EXTERNAL_KEY_STORE", "XksProxyConfiguration": { "AccessKeyId": "ABCDE98765432EXAMPLE", "Connectivity": "VPC_ENDPOINT_SERVICE", "UriEndpoint": "https://example-proxy-uri-endpoint-vpc", "UriPath": "/example/prefix/kms/xks/v1", "VpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-example" } } ] }

Se o valor ConnectionState na resposta de DescribeCustomKeyStores for FAILED, o elemento ConnectionErrorCode indica o motivo da falha.

No exemplo a seguir, o valor XKS_VPC_ENDPOINT_SERVICE_NOT_FOUND para ConnectionErrorCode indica que o AWS KMS não consegue encontrar o serviço de endpoint da VPC que ele usa para se comunicar com o proxy de armazenamento de chaves externas. Verifique se XksProxyVpcEndpointServiceName está correto, se a entidade principal do serviço do AWS KMS é uma entidade principal permitida no serviço de endpoint da Amazon VPC e se o serviço de endpoint da VPC não exige a aceitação de solicitações de conexão. Para obter ajuda para responder a um código de erro de conexão, consulte Códigos de erro de conexão para armazenamentos de chaves externas.

$ aws kms describe-custom-key-stores --custom-key-store-name ExampleXksVpc { "CustomKeyStores": [ { "CustomKeyStoreId": "cks-9876543210fedcba9", "CustomKeyStoreName": "ExampleXksVpc", "ConnectionState": "FAILED", "ConnectionErrorCode": "XKS_VPC_ENDPOINT_SERVICE_NOT_FOUND", "CreationDate": "2022-12-13T18:34:10.675000+00:00", "CustomKeyStoreType": "EXTERNAL_KEY_STORE", "XksProxyConfiguration": { "AccessKeyId": "ABCDE98765432EXAMPLE", "Connectivity": "VPC_ENDPOINT_SERVICE", "UriEndpoint": "https://example-proxy-uri-endpoint-vpc", "UriPath": "/example/prefix/kms/xks/v1", "VpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-example" } } ] }