Criar uma chave do KMS com material de chave importado - 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á.

Criar uma chave do KMS com material de chave importado

O material de chaves importadas permite que você proteja seus AWS recursos com as chaves criptográficas que você gera. O material da chave que você importa está associado a uma chave do KMS específica. Você pode reimportar o mesmo material de chave para a mesma chave KMS, mas não pode importar material de chave diferente para a chave KMS e não pode converter uma chave KMS projetada para material de chave importado em uma chave KMS com material de chave. AWS KMS

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 - 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 chave associada AWS KMS . Para obter mais informações sobre compatibilidade, consulte Requisitos para material de chave importada.

  2. Baixar a chave pública de empacotamento e o token de importação – depois de concluir a etapa 1, baixe uma chave publica de empacotamento e um token de importação. Esses itens protegem a importação de seu material de chaves para o AWS KMS.

    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.

  3. Criptografar o material de chaves – 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.

  4. Importar o material de chaves – 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. 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 pública de empacotamento e o token de importação e importa o material da chave. AWS KMS também registra uma entrada quando você exclui material de chave importado ou quando AWS KMS exclui material de chave expirado.

Permissões para importar material de chave

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 (política do IAM)

    • Para limitar essa permissão às chaves KMS com material de chave importado, use a condição kms: KeyOrigin policy com um valor de. EXTERNAL

      { "Sid": "CreateKMSKeysWithoutKeyMaterial", "Effect": "Allow", "Resource": "*", "Action": "kms:CreateKey", "Condition": { "StringEquals": { "kms:KeyOrigin": "EXTERNAL" } } }
  • kms: GetParametersForImport (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:. WrappingKeySpec

  • kms: ImportKeyMaterial (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 e kms:. ValidTo

Para reimportar o material de chave importado, o diretor precisa das permissões kms: GetParametersForImport e kms:. ImportKeyMaterial

Para excluir o material de chave importado, o diretor precisa de kms: DeleteImportedKeyMaterial 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

O material da chave que você importa deve ser compatível com a especificação de chave 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.

Especificação de chave da chave do KMS Requisitos de material de chaves

Chaves de criptografia simétrica

SYMMETRIC_DEFAULT

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

HMAC_224

HMAC_256

HMAC_384

HMAC_512

O material da chave de HMAC deve estar em conformidade com a RFC 2104.

O comprimento da chave deve corresponder ao comprimento especificado pela especificação da chave.

Chave privada assimétrica RSA

RSA_2048

RSA_3072

RSA_4096

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.

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.

Chave privada assimétrica de curva elíptica

ECC_NIST_P256 (secp256r1)

ECC_NIST_P384 (secp384r1)

ECC_NIST_P521 (secp521r1)

ECC_SECG_P256K1 (secp256k1)

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.

Curva: NIST P-256, NIST P-384, NIST P-521 ou Secp256k1

Parâmetros: somente curvas nomeadas (chaves ECC com parâmetros explícitos são rejeitadas)

Coordenadas de pontos públicos: 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.

SM2 chave privada assimétrica (somente regiões da China)

A chave privada SM2 assimétrica que você importa deve fazer parte de um par de chaves que esteja em conformidade com GM/T 0003.

Curva: SM2

Parâmetros: somente curva nomeada (SM2 chaves com parâmetros explícitos são rejeitadas)

Coordenadas de pontos públicos: 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.