Criar uma chave do KMS com material de chave importado
O material de chaves importadas permite que você proteja seus recursos da AWS 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.
-
Crie uma chave do KMS sem material de chave - A origem deve ser
EXTERNAL. Uma origem de chave deEXTERNALindica que a chave foi projetada para material de chave importado e evita que o AWS KMS gere material de chave para a chave do 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 de chave da chave do AWS KMS associada. Para obter mais informações sobre compatibilidade, consulte Requisitos para material de chave importada.
-
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.
-
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.
-
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 de chave importado expira, o AWS KMS o exclui, e a chave do KMS torna-se 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
PendingImportparaEnabled. Agora, você pode usar suas chaves do KMS em operações de criptografia.
O AWS KMS registra uma entrada no log do AWS CloudTrail quando você cria a chave do KMS, baixa a chave pública de empacotamento e importa o token e importa o material de chave. O AWS KMS também registra uma entrada quando você exclui o material de chave importado ou quando o AWS KMS exclui o 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 console do AWS KMS, essas permissões são adicionadas automaticamente para administradores de chaves quando você cria uma chave com uma origem externa de material de chave.
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 a chaves do KMS com material de chave importado, use a condição de política kms:KeyOrigin com um valor de
EXTERNAL.{ "Sid": "CreateKMSKeysWithoutKeyMaterial", "Effect": "Allow", "Resource": "*", "Action": "kms:CreateKey", "Condition": { "StringEquals": { "kms:KeyOrigin": "EXTERNAL" } } }
-
-
kms:GetParametersForImport (política de chaves ou do IAM)
-
Para limitar essa permissão a solicitações que usem um algoritmo de quebra automática específico e uma especificação de chave de quebra, use as condições de política kms:WrappingAlgorithm e kms:WrappingKeySpec.
-
-
kms:ImportKeyMaterial (política de chaves ou do IAM)
-
Para permitir ou proibir material de chave que expire e controlar a data de validade, use as condições de política kms:ExpirationModel e kms:ValidTo.
-
Para reimportar o material de chave importada, a entidade principal precisa das permissões kms:GetParametersForImport e kms:ImportkeyMaterial.
Para excluir o material de chave importada, a entidade principal precisa da permissão kms:DeleteImportedKeyMaterial.
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. O AWS KMS deriva a chave pública da chave privada.
O AWS KMS oferece suporte para as especificações a seguir de chave de chaves do KMS com material de chave importada.
-
Chaves de criptografia simétrica
-
Especificação de chave:
-
SYMMETRIC_DEFAULT.
-
-
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_224
-
HMAC_256
-
HMAC_384
-
HMAC_512
-
-
Requisitos:
-
O material da chave de HMAC deve estar em conformidade com a RFC 2104
. -
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_256, 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_224: 224 a 1024 bits
-
HMAC_256: 256 a 1024 bits
-
HMAC_384: 384 a 1024 bits
-
HMAC_512: 512 a 1024 bits
-
-
-
Chave privada assimétrica RSA
-
Especificações de chave:
-
RSA_2048
-
RSA_3072
-
RSA_4096
-
-
Requisitos:
-
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
-
Especificações de chave:
-
ECC_NIST_P256 (secp256r1)
-
ECC_NIST_P384 (secp384r1)
-
ECC_NIST_P521 (secp521r1)
-
ECC_SECG_P256K1 (secp256k1)
-
-
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
. -
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 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
.
-
-
-
Chave ML-DSA
-
Especificações de chave:
-
ML_DSA_44
-
ML_DSA_65
-
ML_DSA_87
-
Importante
A importação de chaves ML-DSA não é compatível.
-
-
Chave privada SM2 assimétrica (somente em regiões da China)
-
Requisitos:
-
A chave privada assimétrica SM2 que você importa deve fazer parte de um par de chaves que esteja em conformidade com a GM/T 0003.
-
Curva: SM2.
-
Parâmetros: somente curva nomeada (chaves SM2 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
.
-
-