

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

# Conectar um repositório de chaves externo
<a name="about-xks-connecting"></a>

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](create-cmk-keystore.md) e usar chaves do KMS existentes em [operações de criptografia](manage-cmk-keystore.md#use-cmk-keystore). 

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.
+ Quando você conecta um armazenamento de chaves externo com [conectividade de endpoint público](keystore-external.md#concept-xks-connectivity), AWS KMS envia uma [GetHealthStatus solicitação](keystore-external.md#concept-proxy-apis) ao proxy externo do armazenamento de chaves para validar o [endpoint do URI do proxy, o caminho do URI](create-xks-keystore.md#require-endpoint) [do proxy e a credencial](create-xks-keystore.md#require-path) de autenticação do [proxy](keystore-external.md#concept-xks-credential). Uma resposta bem-sucedida do proxy confirma que o [endpoint do URI do proxy](create-xks-keystore.md#require-endpoint) e o [caminho do URI do proxy](create-xks-keystore.md#require-path) estão corretos e acessíveis e que o proxy autenticou a solicitação assinada com a [credencial de autenticação do proxy](keystore-external.md#concept-xks-credential) para o armazenamento de chaves externas.
+ Ao conectar um armazenamento de chaves externo com a [conectividade do serviço de endpoint VPC](choose-xks-connectivity.md#xks-vpc-connectivity) ao proxy externo do armazenamento de chaves, AWS KMS faça o seguinte: 
  + Confirma que o domínio do nome DNS privado especificado no [endpoint do URI do proxy](create-xks-keystore.md#require-endpoint) foi [verificado](vpc-connectivity.md#xks-private-dns). 
  + Cria um endpoint de interface de uma AWS KMS VPC para seu serviço de endpoint de VPC.
  + Cria uma zona hospedada privada para o nome DNS privado especificado no endpoint do URI do proxy
  + Envia uma [GetHealthStatussolicitação](keystore-external.md#concept-proxy-apis) para o proxy externo do armazenamento de chaves. Uma resposta bem-sucedida do proxy confirma que o [endpoint do URI do proxy](create-xks-keystore.md#require-endpoint) e o [caminho do URI do proxy](create-xks-keystore.md#require-path) estão corretos e acessíveis e que o proxy autenticou a solicitação assinada com a [credencial de autenticação do proxy](keystore-external.md#concept-xks-credential) para o 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 AWS KMS console ou a [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/DescribeCustomKeyStores.html)operação para visualizar o [estado da conexão](xks-connect-disconnect.md#xks-connection-state) externa do seu armazenamento de chaves.

Quando o estado da conexão é`FAILED`, um código de erro de conexão é exibido no AWS KMS console e adicionado à `DescribeCustomKeyStore` resposta. 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](xks-troubleshooting.md#xks-connection-error-codes).

## Conectar e reconectar ao repositório de chaves externo
<a name="connect-xks"></a>

Você pode conectar ou reconectar seu armazenamento de chaves externo no AWS KMS console ou usando a [ConnectCustomKeyStore](https://docs.aws.amazon.com/kms/latest/APIReference/API_ConnectCustomKeyStore.html)operação.

### Usando o AWS KMS console
<a name="connect-xks-console"></a>

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

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

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

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

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

   Se o [estado de conexão](xks-connect-disconnect.md#xks-connection-state) do armazenamento de chaves externas for **FAILED**, você deverá [desconectar o armazenamento de chaves externas](disconnect-keystore.md#disconnect-keystore-console) antes de conectá-lo.

1. 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](xks-connect-disconnect.md#xks-connection-state) é 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](xks-troubleshooting.md#xks-connection-error-codes). Para conectar um armazenamento de chaves externas com o estado de conexão **Failed**, você deve primeiro [desconectar o armazenamento de chaves personalizado](disconnect-keystore.md#disconnect-keystore-console).

### Usando a AWS KMS API
<a name="connect-xks-api"></a>

Para conectar um armazenamento de chaves externo desconectado, use a [ConnectCustomKeyStore](https://docs.aws.amazon.com/kms/latest/APIReference/API_ConnectCustomKeyStore.html)operação. 

Antes de se conectar, o [estado da conexão](xks-connect-disconnect.md#xks-connection-state) do armazenamento de chaves externas deve ser `DISCONNECTED`. Se o estado da conexão atual for `FAILED`, [desconecte o armazenamento de chaves externas](about-xks-disconnecting.md#disconnect-xks-api) 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 externo está conectado, veja o estado da conexão na [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html)resposta. 

Os exemplos nesta seção usam a [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/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 personalizadas** no console ou usando a [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html)operação. 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 externo está conectado, use a [DescribeCustomKeyStores](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeCustomKeyStores.html)operação. 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 `XKS_VPC_ENDPOINT_SERVICE_NOT_FOUND` valor do `ConnectionErrorCode` indica que não é AWS KMS possível encontrar o serviço de endpoint da VPC que ele usa para se comunicar com o proxy externo do armazenamento de chaves. Verifique se `XksProxyVpcEndpointServiceName` está correto, se o principal de AWS KMS serviço é um principal permitido no serviço de endpoint da Amazon VPC e se o serviço de endpoint de 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](xks-troubleshooting.md#xks-connection-error-codes).

```
$ 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"
      }
    }
  ]
}
```