Rodrigo Fernandes
Posted on May 19, 2023
Anotações sobre o AWS KMS - Key Material para ajudar na preparação das certificações AWS.
Até o momento as anotações são para as certificações abaixo:
Definição do fornecedor
A Key Material é uma propriedade da Key do KMS que identifica a origem do Key Material na Key do KMS.
Anotações gerais
- External
- O download expira em até 24 horas
- Você escolhe a origem do Key Material ao criar a Key do KMS
- Não é possível alterá-la, extrair e visualizar
- Não tem rotação automática
- Select o wrapping algoritmo
- Download key
- Custom key store (CloudHSM)
- O key material não pode ser excluído; você deve excluir a Key KMS.
- Encrypted key material and import token
- Pode setar a expiração da key - 7 a 30 dias
- Deleção manual da key material importada
- Cria-se uma nova CMK e altere o alias para a nova utilizando cli -
aws kms update-alias
- KMS Key --> Key Meta-Data + Key Material
- Por padrão o Key Material é AWS KMS
- O CMK também contém o Key Material usado para criptografar e descriptografar dados.
- Ao importar Key Material, você pode especificar uma data de expiração.
- Pode excluir sob-demanda
Permissões para importar Key Material
Para criar e gerenciar Keys do KMS com Key Material importado
- kms:GetParametersForImport
- kms:ImportKeyMaterial
- kms:DeleteImportedKeyMaterial
Para **criar Keys do KMS com Key Material importado**
- kms:CreateKey
Para limitar essa permissão a Key do KMS com Key Material 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
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
Para permitir ou proibir Material que expire e controlar a data de validade, use as condições de política kms:ExpirationModel
e kms:ValidTo
.
Para reimportar o Key Material importada, a entidade principal precisa das permissões kms:GetParametersForImport
e kms:ImportkeyMaterial
.
Para excluir o Key Material importada, a entidade principal precisa da permissão kms:DeleteImportedKeyMaterial
.
Por exemplo, para permitir que o exemplo KMSAdminRole
gerencie todos os aspectos de uma Key do KMS com Material importado, inclua uma declaração de política de Keys como a seguinte na política de Keys 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"
]
}
Comandos para importar Key Material
openssl rand -out PlaintextKeyMaterial.bin 32
openssl pkeyutl -in PlaintextKeyMaterial.bin -out EncryptedKeyMaterial.bin -inkey PublicKey.bin -keyform DER -pubin -encrypt -pkeyopt rsa_padding_mode:oaep -pkeyopt rsa_oaep_md:sha256
Key Material Origin
AWS_KMS
O AWS KMS cria e gerencia o Key Material para a Key do KMS no AWS KMS. Esse é o valor padrão e o recomendado para a maioria das Key do KMS.
EXTERNAL
A Key do KMS tem Key Material importado. Quando uma Key do KMS é criada com uma origem de Key Material External, ela não tem Key Material.
Mais tarde, você poderá importar Key Material para a Key do KMS. Ao usar material de Key importada, é necessário proteger e gerenciar esse Key Material fora do AWS KMS, incluindo a substituição do Key Material se ele expirar.
AWS_CLOUDHSM
O AWS KMS criou o Key Material para a Key do KMS no cluster do AWS CloudHSM associado ao seu armazenamento personalizado de Key .
Importar Key Material
Quando uma Key do KMS é criada com uma origem de Key Material External, ela não tem Key Material.
- Você pode importar Key Material simétrica de 256 bits de sua infraestrutura de gerenciamento de Key para o AWS KMS e usá-lo como qualquer outra Key do AWS KMS.
- Agenda a exclusão de 7 a 30 dias, exclua manualmente o key material importado
Como importar novamente o mesmo Key Material
- Utilize uma chave do KMS existente em vez de criar uma nova.
- Se a chave do KMS importou o Key Material importado, você deve excluir o Key Material importado existente antes de importá-lo novamente.
- Ao reimportar o Key Material, você pode alterar o modelo de expiração e data de expiração.
Referências
Quando uma Master Key (CMK) c/ Key Material está com problemas na importação
- Key Material não é uma Key simétrica de 256bit
- Demorou mais de 24 horas e o token expirou
Quando uma Master Key (CMK) c/ Key Material importado está prestes a expirar
- Criptografe com o mesmo Key Material e reimporte o Key Material para a mesma CMK
- A Rotation Key altera apenas o Key Material , que é o segredo criptográfico usado nas operações de criptografia. A Key KMS é o mesmo recurso lógico, independentemente de quantas vezes seu Key Material seja alterado. As propriedades da Key KMS não mudam
Importar Key Material em Keys do AWS KMS
Criar uma chave do KMS de criptografia simétrica sem Key Material: a especificação de chave deve ser SYMMETRIC_DEFAULT e a origem deve ser EXTERNAL. Uma origem de chave de EXTERNAL indica que a chave foi projetada para Key Material importado e evita que o AWS KMS gere Key Material para a chave do KMS. Em uma etapa posterior, você importará seu próprio Key Material para essa chave do KMS.
Baixar a chave pública e o token de importação – depois de concluir a etapa 1, baixe uma chave publica e um token de importação. Esses itens protegem a importação de seu Key Material para o AWS KMS.
Criptografar o Key Material – use a chave pública baixada na etapa 2 para criptografar o Key Materials que você criou no seu próprio sistema.
Importar o Key Material – carregue o Key Material criptografado que você criou na etapa 3 e o token de importação que você baixou na etapa 2.
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 Keys do KMS em operações de criptografia.
Posted on May 19, 2023
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.