Criar chaves - 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 chaves

É possível criar chaves mestras do cliente simétricas e assimétricas (CMKs) no AWS Management Console ou usando a operação CreateKey. Durante esse processo, você determina a configuração criptográfica da CMK e a origem de seu material de chave. Não é possível alterar essas propriedades depois que a CMK é criada. Você também define a política de chave da CMK, que pode ser alterada a qualquer momento.

Se você estiver criando uma CMK para criptografar dados armazenados ou gerenciados em umaAWSserviçoServiço do, crie uma CMK simétrica.AWSserviços que são integrados aoAWS KMSUse CMKs simétricas para criptografar seus dados. Esses serviços não oferecem suporte a CMKs assimétricas. Para ajudar a decidir qual tipo de CMK deve ser criada, consulte Como escolher a configuração da CMK.

Quando você cria uma CMK no console do AWS KMS, é necessário fornecer um alias (nome amigável) a ela. OCreateKeyNão cria um alias para a nova CMK. Para obter informações detalhadas sobre aliases no AWS KMS, consulte Usar aliases.

Saiba mais:

Permissões para criar CMKs

Para criar uma CMK no console ou usando as APIs, é necessário ter a seguinte permissão em uma política do IAM. Sempre que possível, useChaves de condição dopara limitar as permissões. Para obter um exemplo de uma política do IAM para entidades que criam chaves, consultePermitir que um usuário crie CMKs.

nota

Seja cauteloso ao dar permissão aos principais para gerenciar tags e aliases. Alterar uma tag ou um alias pode conceder ou negar uma permissão à CMK. Para obter mais detalhes, consulte Usar ABAC paraAWS KMS.

OKMS:PutKeyPolicynão é necessária para criar o CMK. Okms:CreateKeyinclui permissão para definir a política de chave inicial. Mas você deve adicionar essa permissão à diretiva de chave ao criar o CMK para garantir que você possa controlar o acesso ao CMK. A alternativa é usar oByPassLockoutSafetyCheckO parâmetro, o que não é recomendado.

Criar CMKs simétricas

É possível criar CMKs simétricas no AWS Management Console ou usando a API do AWS KMS. A criptografia de chave simétrica usa a mesma chave para criptografar e descriptografar dados.

Você pode usar o AWS Management Console para criar as chaves mestras do cliente (CMKs).

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

  2. Para alterar a região da AWS, use o Region selector (Seletor de regiões) no canto superior direito da página.

  3. No painel de navegação, escolha Customer managed keys (Chaves gerenciadas de cliente).

  4. Selecione Create key (Criar chave).

  5. Para criar uma CMK simétrica, em Key type (Tipo de chave), selecione Symmetric (Simétrica).

    Para obter informações sobre como criar uma CMK assimétrica no console do AWS KMS, consulte Criar CMKs assimétricas (console).

  6. Escolha Next (Próximo).

  7. Digite umaliasPara a CMK. O nome do alias não pode começar com aws/. Oaws/O prefixo é reservado pela Amazon Web Services para representarAWSAs CMKs gerenciadas pela CMKs da

    nota

    Adicionar, excluir ou atualizar um alias pode conceder ou negar uma permissão à CMK. Para obter mais detalhes, consulte Usar ABAC paraAWS KMS e Usando aliases para controlar o acesso a CMKs.

    Um alias é um nome de exibição que identifica a CMK. Recomendamos que você escolha um alias que indique o tipo de dados que pretende proteger ou o aplicativo que pretende usar com a CMK.

    Os aliases são necessários ao criar uma CMK no AWS Management Console. Eles são opcionais quando você usa a operação CreateKey.

  8. (Opcional) Digite uma descrição da CMK.

    Você pode adicionar uma descrição agora ou atualizá-la a qualquer momento, a menos que aestado da chaveéPending DeletionouPending Replica Deletion. Para adicionar, alterar ou excluir a descrição de uma CMK existente gerenciada pelo cliente,editar a descriçãonoAWS Management Consoleou use oUpdateKeyDescriptionoperação.

  9. Escolha Next (Próximo).

  10. (Opcional) Digite uma chave de tag e um valor de tag opcional. Para adicionar mais de uma tag à CMK, selecione Add tag (Adicionar tag).

    nota

    Marcar ou desmarcar uma CMK pode conceder ou negar uma permissão à CMK. Para obter mais detalhes, consulte Usar ABAC paraAWS KMS e Uso de tags para controlar o acesso aos CMKs.

    Ao adicionar tags aos recursos da AWS, a AWS gera um relatório de alocação de custos com utilização e custos agrupados por tags. As tags também podem ser usadas para controlar o acesso a uma CMK. Para obter informações sobre a marcação de CMKs, consulteMarcar chaveseUsar ABAC paraAWS KMS.

  11. Escolha Next (Próximo).

  12. Selecione os usuários do IAM e as funções do que podem administrar a CMK.

    nota

    As políticas do IAM podem conceder a outros usuários e outras funções do IAM permissão para gerenciar a CMK.

  13. (Opcional) Para impedir que os usuários e funções do IAM selecionados do IAM excluam essa CMK, noExcluir a chaveNa parte inferior da página, desmarque a caixa de seleçãoPermitir que os administradores de chaves excluam essa chave.

  14. Escolha Next (Próximo).

  15. Selecione os usuários do IAM e as funções do que podem usar a CMK paraoperações de criptografia.

    nota

    O Conta da AWS (usuário raiz) tem permissões completas, por padrão. Como resultado, qualquer política do IAM também pode conceder aos usuários e funções permissão para usar a CMK para operações de criptografia.

  16. (Opcional) Você pode permitir que outros Contas da AWS Para usar essa CMK para operações de criptografia. Para isso, na caixa de diálogoOther (Outros) Contas da AWS Na parte inferior da página, escolhaAdicionar outro Conta da AWS insira a caixa de seleção Conta da AWS número de identificação de uma conta externa. Para adicionar várias contas externas, repita essa etapa.

    nota

    Para permitir que os principais de contas externas usem a CMK, os administradores da conta externa devem criar políticas do IAM que forneçam essas permissões. Para obter mais informações, consulte Permitir que usuários de outras contas usem uma CMK.

  17. Escolha Next (Próximo).

  18. Revise as configurações de chave escolhidas. Você ainda pode voltar e alterar todas as configurações.

  19. Selecione Finish (Concluir) para criar a CMK.

É possível usar a operação CreateKey para criar uma chave mestra do cliente (CMK) simétrica. Estes exemplos usam a AWS Command Line Interface (AWS CLI), mas você pode usar qualquer linguagem de programação compatível.

Essa operação não tem os parâmetros obrigatórios. No entanto, você também pode usar o parâmetro Policy para especificar uma política de chaves. Você pode alterar a política de chaves (PutKeyPolicy) e adicionar elementos opcionais, como uma descrição e tags a qualquer momento. Além disso, se estiver criando uma CMK para material de chave importada ou uma CMK em um armazenamento de chaves personalizado, o parâmetro Origin será necessário.

OCreateKeynão permite que você especifique um alias, mas você pode usar oCreateAliasPara criar um alias para a nova CMK.

Veja a seguir um exemplo de uma chamada para a operação CreateKey sem parâmetros. Esse comando usa todos os valores padrão. Ele cria uma CMK simétrica para criptografar e descriptografar com material de chave gerado pelo AWS KMS.

$ aws kms create-key { "KeyMetadata": { "Origin": "AWS_KMS", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "Description": "", "KeyManager": "CUSTOMER", "Enabled": true, "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "Enabled", "CreationDate": 1502910355.475, "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "MultiRegion": false "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], } }

Se você não especificar uma política de chaves para sua nova CMK, a política de chave padrão aplicada por CreateKey será diferente da política de chaves padrão que o console aplica quando você o usa para criar uma nova CMK.

Por exemplo, essa chamada para a operação GetKeyPolicy retorna a política de chave aplicada por CreateKey. Ele dá o Conta da AWS Acesso à CMK e permite que ele crieAWS Identity and Access Management(IAM) para a CMK. Para obter informações detalhadas sobre as políticas do IAM e as políticas de chave para CMKs, consulteAutenticação e controle de acesso para o AWS KMS

$ aws kms get-key-policy --key-id 1234abcd-12ab-34cd-56ef-1234567890ab --policy-name default --output text { "Version" : "2012-10-17", "Id" : "key-default-1", "Statement" : [ { "Sid" : "Enable IAM policies", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : "kms:*", "Resource" : "*" } ] }

Criar CMKs assimétricas

É possível criar CMKs assimétricas no AWS Management Console ou usando a API do AWS KMS. Uma CMK assimétrica representa um par de chaves pública e privada que pode ser usado para criptografia ou para assinatura. A chave privada permanece dentro doAWS KMS. Para fazer download da chave pública para uso fora doAWS KMS, consulteFazer download de chaves públicas.

Ao criar uma CMK para criptografar dados em umaAWSserviçoServiço doCrie uma CMK simétrica.AWSOs serviços do não oferecem suporte a CMKs assimétricas para criptografia. Para ajudar a decidir se deseja criar uma CMK simétrica ou assimétrica, consulte Como escolher a configuração da CMK.

É possível usar o AWS Management Console para criar chaves mestras do cliente (CMKs) assimétricas. Cada CMK assimétrica representa um par de chaves pública e privada.

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

  2. Para alterar a região da AWS, use o Region selector (Seletor de regiões) no canto superior direito da página.

  3. No painel de navegação, escolha Customer managed keys (Chaves gerenciadas de cliente).

  4. Selecione Create key (Criar chave).

  5. Para criar uma CMK assimétrica, em Key type (Tipo de chave), selecione Asymmetric (Assimétrica).

    Para obter informações sobre como criar uma CMK simétrica no console do AWS KMS, consulte Criar CMKs simétricas (console).

  6. Para criar uma CMK assimétrica para assinar mensagens e verificar assinaturas, em Key usage (Uso de chave), selecione Encrypt and decrypt (Criptografar e descriptografar). Ou, para criar uma CMK assimétrica para assinar mensagens e verificar assinaturas, em Key usage (Uso de chave), selecione Sign and verify (Assinar e verificar).

    Para ajudar a escolher um valor de uso de chave, consulte Selecionar o uso de chave.

  7. Escolha uma especificação (Key spec (Especificação da chave)) para a CMK assimétrica.

    Geralmente a especificação de chave escolhida é determinada pelos requisitos regulatórios, de segurança ou de negócios. Ela também pode ser influenciada pelo tamanho das mensagens que você precisa criptografar ou assinar. Em geral, chaves de criptografia maiores são mais resistentes a ataques de força bruta.

    Para ajudar para escolher uma especificação de chave, consulte Selecionar a especificação de chave.

  8. Escolha Next (Próximo).

  9. Digite umaliasPara a CMK. O nome do alias não pode começar com aws/. Oaws/O prefixo é reservado pela Amazon Web Services para representarAWSAs CMKs gerenciadas pela CMKs da

    UmaaliasÉ um nome amigável que você pode usar para identificar a CMK no console e em algunsAWS KMSAPIs. Recomendamos que você escolha um alias que indique o tipo de dados que pretende proteger ou o aplicativo que pretende usar com a CMK.

    Os aliases são necessários ao criar uma CMK no AWS Management Console. Não é possível especificar um alias ao usar a propriedadeCreateKey, mas você pode usar o console do ou aCreateAliasPara criar um alias para uma CMK existente. Para obter mais detalhes, consulte Usar aliases.

  10. (Opcional) Digite uma descrição da CMK.

    Você pode adicionar uma descrição agora ou atualizá-la a qualquer momento, a menos que aestado da chaveéPending DeletionouPending Replica Deletion. Para adicionar, alterar ou excluir a descrição de uma CMK existente gerenciada pelo cliente,editar a descriçãonoAWS Management Consoleou use oUpdateKeyDescriptionoperação.

  11. (Opcional) Digite uma chave de tag e um valor de tag opcional. Para adicionar mais de uma tag à CMK, selecione Add tag (Adicionar tag).

    Ao adicionar tags aos recursos da AWS, a AWS gera um relatório de alocação de custos com utilização e custos agrupados por tags. As tags também podem ser usadas para controlar o acesso a uma CMK. Para obter informações sobre a marcação de CMKs, consulteMarcar chaveseUsar ABAC paraAWS KMS.

  12. Escolha Next (Próximo).

  13. Selecione os usuários do IAM e as funções do que podem administrar a CMK.

    nota

    As políticas do IAM podem conceder a outros usuários e outras funções do IAM permissão para gerenciar a CMK.

  14. (Opcional) Para impedir que os usuários e funções do IAM selecionados do IAM excluam essa CMK, noExcluir a chaveNa parte inferior da página, desmarque a caixa de seleçãoPermitir que os administradores de chaves excluam essa chave.

  15. Escolha Next (Próximo).

  16. Selecione os usuários do IAM e as funções do que podem usar a CMK paraoperações de criptografia.

    nota

    O Conta da AWS (usuário raiz) tem permissões completas, por padrão. Como resultado, qualquer política do IAM também pode conceder aos usuários e funções permissão para usar a CMK para operações de criptografia.

  17. (Opcional) Você pode permitir que outros Contas da AWS Para usar essa CMK para operações de criptografia. Para isso, na caixa de diálogoOther (Outros) Contas da AWS Na parte inferior da página, escolhaAdicionar outro Conta da AWS insira a caixa de seleção Conta da AWS número de identificação de uma conta externa. Para adicionar várias contas externas, repita essa etapa.

    nota

    Para permitir que os principais de contas externas usem a CMK, os administradores da conta externa devem criar políticas do IAM que forneçam essas permissões. Para obter mais informações, consulte Permitir que usuários de outras contas usem uma CMK.

  18. Escolha Next (Próximo).

  19. Revise as configurações de chave escolhidas. Você ainda pode voltar e alterar todas as configurações.

  20. Selecione Finish (Concluir) para criar a CMK.

É possível usar a operação CreateKey para criar uma chave mestra do cliente (CMK) assimétrica. Estes exemplos usam a AWS Command Line Interface (AWS CLI), mas você pode usar qualquer linguagem de programação compatível.

Ao criar uma CMK assimétrica, é necessário especificar o parâmetro CustomerMasterKeySpec, que determina o tipo de chaves criada. Além disso, é necessário especificar um valor KeyUsage de ENCRYPT_DECRYPT ou SIGN_VERIFY. Não é possível alterar essas propriedades depois que a CMK é criada.

OCreateKeynão permite que você especifique um alias, mas você pode usar oCreateAliasPara criar um alias para a nova CMK.

O exemplo a seguir usa a operação CreateKey para criar uma CMK assimétrica de chaves RSA de 4.096 bits projetada para criptografia de chave pública.

$ aws kms create-key --customer-master-key-spec RSA_4096 --key-usage ENCRYPT_DECRYPT { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "CustomerMasterKeySpec": "RSA_4096", "KeyManager": "CUSTOMER", "Description": "", "KeyUsage": "ENCRYPT_DECRYPT", "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": 1569973196.214, "MultiRegion": false, "EncryptionAlgorithms": [ "RSAES_OAEP_SHA_1", "RSAES_OAEP_SHA_256" ], "AWSAccountId": "111122223333", "Origin": "AWS_KMS", "Enabled": true } }

O exemplo de comando a seguir cria uma CMK assimétrica que representa um par de chaves ECDSA usado para assinatura e verificação. Não é possível criar um par de chaves de curva elíptica para criptografia e descriptografia.

$ aws kms create-key --customer-master-key-spec ECC_NIST_P521 --key-usage SIGN_VERIFY { "KeyMetadata": { "KeyState": "Enabled", "KeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": 1570824817.837, "Origin": "AWS_KMS", "SigningAlgorithms": [ "ECDSA_SHA_512" ], "Arn": "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321", "AWSAccountId": "111122223333", "CustomerMasterKeySpec": "ECC_NIST_P521", "KeyManager": "CUSTOMER", "Description": "", "Enabled": true, "MultiRegion": false, "KeyUsage": "SIGN_VERIFY" } }