

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

# Criar uma chave do KMS com material de chave importado
<a name="importing-keys-conceptual"></a>

O material de chaves importadas permite que você proteja seus AWS recursos com as chaves criptográficas que você gera. A visão geral a seguir explica o processo para importar seu material de chaves para o AWS KMS. Para obter mais detalhes sobre cada etapa no processo, consulte o tópico correspondente.

1. [Crie uma chave do KMS sem material de chave](importing-keys-create-cmk.md) - A origem deve ser `EXTERNAL`. A origem da chave `EXTERNAL` indica que a chave foi projetada para material de chave importado e AWS KMS impede a geração de material de chave para a chave KMS. Em uma etapa posterior, você importará seu próprio material de chave para essa chave do KMS.

   O material da chave que você importa deve ser compatível com a especificação da AWS KMS chave associada. Para obter mais informações sobre compatibilidade, consulte [Requisitos para material de chave importada](#importing-keys-material-requirements).

1. [Baixar a chave pública de empacotamento e o token de importação](importing-keys-get-public-key-and-token.md) – depois de concluir a etapa 1, baixe uma chave publica de empacotamento e um token de importação. Esses itens protegem seu material principal enquanto ele é importado para AWS KMS o.

   Nesta etapa, você escolhe o tipo (“especificação de chave”) para a chave de empacotamento RSA e o algoritmo de empacotamento que você usará para criptografar os dados em trânsito para o AWS KMS. É possível escolher uma especificação de chave de empacotamento e um algoritmo de chave de empacotamento diferentes sempre que importar ou reimportar o mesmo material de chave. 

1. [Criptografar o material de chaves](importing-keys-encrypt-key-material.md) – use a chave pública de empacotamento baixada na etapa 2 para criptografar o material de chaves que você criou no seu próprio sistema.

1. [Importar o material de chaves](importing-keys-import-key-material.md) – carregue o material de chave criptografado que você criou na etapa 3 e o token de importação que você baixou na etapa 2.

   Nessa etapa, é possível [definir um prazo de validade opcional](importing-keys-import-key-material.md#importing-keys-expiration). Quando o material da chave importada expira, ele é AWS KMS excluído e a chave KMS fica inutilizável. Para continuar usando a chave do KMS, você deve reimportar o **mesmo** material de chave.

   Quando a operação de importação é concluída com êxito, o estado da chave KMS muda de `PendingImport` para `Enabled`. Agora, você pode usar suas chaves do KMS em operações de criptografia.

AWS KMS registra uma entrada em seu AWS CloudTrail registro quando você [cria a chave KMS, baixa a chave](ct-createkey.md) [pública de empacotamento e o token de importação](ct-getparametersforimport.md) [e importa o material da chave](ct-importkeymaterial.md). AWS KMS também registra uma entrada quando você exclui material de chave importado ou quando AWS KMS [exclui material de chave expirado](ct-deleteexpiredkeymaterial.md). 

## Permissões para importar material de chave
<a name="importing-keys-permissions"></a>

Para criar e gerenciar chaves do KMS com material de chave importado, o usuário precisa de permissão para as operações nesse processo. Você pode fornecer as permissões `kms:GetParametersForImport`, `kms:ImportKeyMaterial` e `kms:DeleteImportedKeyMaterial` na política de chaves ao criar a chave do KMS. No AWS KMS console, essas permissões são adicionadas automaticamente para administradores de chaves quando você cria uma chave com uma origem de material de chave **externa**.

Para criar chaves do KMS com material de chave importado, a entidade principal precisa das permissões a seguir.
+ [kms: CreateKey](customer-managed-policies.md#iam-policy-example-create-key) (política do IAM)
  + Para limitar essa permissão às chaves KMS com material de chave importado, use a condição [kms: KeyOrigin](conditions-kms.md#conditions-kms-key-origin) policy com um valor de. `EXTERNAL`

    ```
    {
      "Sid": "CreateKMSKeysWithoutKeyMaterial",
      "Effect": "Allow",
      "Resource": "*",
      "Action": "kms:CreateKey",
      "Condition": {
        "StringEquals": {
          "kms:KeyOrigin": "EXTERNAL"
        }
      }
    }
    ```
+ [kms: GetParametersForImport](https://docs.aws.amazon.com/kms/latest/APIReference/API_GetParametersForImport.html) (Política de chave ou política do IAM)
  + Para limitar essa permissão a solicitações que usam um algoritmo de empacotamento específico e uma especificação de chave de encapsulamento, use as condições de política [kms: WrappingAlgorithm e [kms](conditions-kms.md#conditions-kms-wrapping-key-spec):](conditions-kms.md#conditions-kms-wrapping-algorithm). WrappingKeySpec 
+ [kms: ImportKeyMaterial](https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html) (Política de chave ou política do IAM)
  + Para permitir ou proibir o material chave que expira e controlar a data de expiração, use as condições da política [kms: ExpirationModel](conditions-kms.md#conditions-kms-expiration-model) e [kms](conditions-kms.md#conditions-kms-valid-to):. ValidTo

Para reimportar o material de chave importado, o diretor precisa das permissões [kms: GetParametersForImport](https://docs.aws.amazon.com/kms/latest/APIReference/API_GetParametersForImport.html) e [kms](https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html):. ImportKeyMaterial

Para excluir o material de chave importado, o diretor precisa de [kms: DeleteImportedKeyMaterial](https://docs.aws.amazon.com/kms/latest/APIReference/API_DeleteImportedKeyMaterial.html) permission.

Por exemplo, para permitir que o exemplo `KMSAdminRole` gerencie todos os aspectos de uma chave do KMS com material de chave importado, inclua uma declaração de política de chaves como a seguinte na política de chaves da chave do KMS.

```
{
  "Sid": "Manage KMS keys with imported key material",
  "Effect": "Allow",
  "Resource": "*",
  "Principal": {
    "AWS": "arn:aws:iam::111122223333:role/KMSAdminRole"
  },
  "Action": [
    "kms:GetParametersForImport",
    "kms:ImportKeyMaterial",
    "kms:DeleteImportedKeyMaterial"
  ]  
}
```

## Requisitos para material de chave importada
<a name="importing-keys-material-requirements"></a>

O material da chave que você importa deve ser compatível com a [especificação de chave](create-keys.md#key-spec) da chave do KMS correspondente. Para pares de chaves assimétricas, importe somente a chave privada do par. AWS KMS deriva a chave pública da chave privada.

AWS KMS suporta as seguintes especificações principais para chaves KMS com material de chave importado.
+ **Chaves de criptografia simétrica**
  + **Especificação de chave:**
    + SYMMETRIC\$1DEFAULT.
  + **Requisitos:**
    + 256 bits (32 bytes) de dados binários.
    + Nas regiões da China, elas devem ter 128 bits (16 bytes) de dados binários.
+ **Chaves de HMAC**
  + **Especificações de chave:**
    + HMAC\$1224
    + HMAC\$1256
    + HMAC\$1384
    + HMAC\$1512
  + **Requisitos:**
    + O material da chave de HMAC deve estar em conformidade com a [RFC 2104](https://datatracker.ietf.org/doc/html/rfc2104).
    + O tamanho da chave deve corresponder ao especificado pela especificação de chave. O tamanho máximo da chave é de 1024 bits.
    + Se o material da chave exceder 1024 bits, você poderá fazer o hash do material da chave e importar a saída do hash. O algoritmo de hash deve corresponder à especificação de chave do KMS HMAC que você está criando.
  + **Exemplo:**
    + Para importar 2048 bits de material de chave em uma chave HMAC\$1256, primeiro calcule o hash SHA-256 do material de chave de 2048 bits e, em seguida, importe a saída de hash de 256 bits resultante para a chave do KMS.
  + **Comprimentos de chave válidos:**
    + HMAC\$1224: 224 a 1024 bits
    + HMAC\$1256: 256 a 1024 bits
    + HMAC\$1384: 384 a 1024 bits
    + HMAC\$1512: 512 a 1024 bits
+ **Chave privada assimétrica RSA**
  + **Especificações de chave:**
    + RSA\$12048
    + RSA\$13072
    + RSA\$14096
  + **Requisitos:**
    + [A chave privada assimétrica RSA que você importa deve fazer parte de um par de chaves que esteja em conformidade com a RFC 3447.](https://datatracker.ietf.org/doc/html/rfc3447/)
    + **Módulo**: 2048 bits, 3072 bits ou 4096 bits
    + **Número de primes**: 2 (chaves RSA com vários primes não são compatíveis)
    + O material de chave assimétrica deve ser codificado em BER ou em DER no formato Public-Key Cryptography Standards (PKCS) n.º 8, compatível com a [RFC 5208](https://datatracker.ietf.org/doc/html/rfc5208).
+ **Chave privada assimétrica de curva elíptica**
  + **Especificações de chave:**
    + ECC\$1NIST\$1P256 (secp256r1)
    + ECC\$1NIST\$1P384 (secp384r1)
    + ECC\$1NIST\$1P521 (secp521r1)
    + ECC\$1SECG\$1P256K1 (secp256k1)
    + EDWARDS25519 ECC\$1NIST\$1 (ed25519)
  + **Requisitos:**
    + A chave privada assimétrica ECC que você importa deve fazer parte de um par de chaves que esteja em conformidade com a [RFC 5915](https://datatracker.ietf.org/doc/html/rfc5915/).
    + **Curva:** NIST P-256, NIST P-384, NIST P-521, SECP256K1, NIST Ed25519.
    + **Parâmetros:** somente curvas nomeadas (chaves ECC com parâmetros explícitos são rejeitadas).
    + **Coordenadas de ponto público:** podem ser compactadas, não compactadas ou projetivas.
    + O material de chave assimétrica deve ser codificado em BER ou em DER no formato Public-Key Cryptography Standards (PKCS) n.º 8, compatível com a [RFC 5208](https://datatracker.ietf.org/doc/html/rfc5208).
+ **Chave ML-DSA**
  + **Especificações de chave:**
    + ML\$1DSA\$144
    + ML\$1DSA\$165
    + ML\$1DSA\$187
**Importante**  
A importação de chaves ML-DSA não é compatível.
+ **SM2 chave privada assimétrica** (somente regiões da China)
  + **Requisitos:**
    + A chave privada SM2 assimétrica que você importa deve fazer parte de um par de chaves que esteja em conformidade com 0003. GM/T 
    + **Curva:** SM2.
    + **Parâmetros:** somente curva nomeada (SM2 chaves com parâmetros explícitos são rejeitadas).
    + **Coordenadas de ponto público:** podem ser compactadas, não compactadas ou projetivas.
    + O material de chave assimétrica deve ser codificado em BER ou em DER no formato Public-Key Cryptography Standards (PKCS) n.º 8, compatível com a [RFC 5208](https://datatracker.ietf.org/doc/html/rfc5208).