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

Você pode criarChaves mestras do cliente simétricas e assimétricas(CMKs) no Console de Gerenciamento da AWS ou usando aCreateKeyoperação. 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 um serviço da AWS, crie uma CMK simétrica. Serviços da AWS integrados ao AWS KMSUse CMKs simétricas para criptografar 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. A operação CreateKey não cria um alias para a nova CMK. Para criar um alias para uma CMK nova ou existente, use a operação CreateAlias. Para obter informações detalhadas sobre aliases no AWS KMS, consulteUsar aliases.

Saiba mais:

Permissões para criar CMKs

Para criar uma CMK no console do 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 Uso do ABAC para AWS 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 oByPassLockoutSafetyCheck, o que não é recomendado.

Criar CMKs simétricas

Você pode criarCMKs simétricasNo Console de Gerenciamento da AWS 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 Console de Gerenciamento da AWS 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, consulteCriar CMKs assimétricas (console).

  6. Escolha Next (Próximo).

  7. Digite um alias para a CMK. O nome do alias não pode começar com aws/. Oaws/O prefixo é reservado pela Amazon Web Services para representar as CMKs gerenciadas pela AWS em sua conta.

    nota

    Adicionar, excluir ou atualizar um alias pode conceder ou negar uma permissão à CMK. Para obter mais detalhes, consulte Uso do ABAC para AWS KMS e Usar 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 do. Eles são opcionais quando você usa a operação CreateKey.

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

    Insira uma descrição que explique o tipo de dados que pretende proteger ou o aplicativo que pretende usar com a CMK. Não use o formato de descrição usado paraCMKs gerenciadas pela AWS. OChave mestra padrão que protege meu... quando nenhuma outra chave está definidaO formato de descrição é reservado para CMKs gerenciadas da AWS.

    Você pode adicionar uma descrição agora ou atualizá-la a qualquer momento, a menos que o estado da chave seja Pending Deletion. Para adicionar, alterar ou excluir a descrição de uma CMK existente gerenciada pelo cliente,editar a descriçãoNo Console de Gerenciamento da AWS, use aUpdateKeyDescriptionoperaçã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 Uso do ABAC para AWS KMS e Uso de tags para controlar o acesso aos CMKs.

    Quando você adiciona tags aos recursos da AWS, ela gera um relatório de alocação de custos com usos e custos agrupados por tags. Tags também podem ser usadas para controlar o acesso a uma CMK. Para obter informações sobre marcação de CMKs, consulteMarcar chaveseUso do ABAC para AWS KMS.

  11. Escolha Next (Próximo).

  12. Selecione os usuários e as funções do IAM 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 chavesNa 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

    A 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 criptográficas.

  16. (Opcional) Você pode permitir que outras contas da AWS usem essa CMK para operações de criptografia. Para isso, naOutras contas da AWSNa parte inferior da página, escolhaAdicionar outra conta da AWSe insira o número de identificação da conta da AWS 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 aInterface da linha de comando da AWS (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 especificar um alias, mas você pode usar oCreateAliasPara criar um alias para o novo 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" "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 oferece acesso à CMK para a conta da AWS e permite a criação de políticas do AWS 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, consulteControle de acesso e autenticação do 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 User Permissions", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : "kms:*", "Resource" : "*" } ] }

Criar CMKs assimétricas

Você pode criarCMKs assimétricasNo Console de Gerenciamento da AWS 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 do AWS KMS. Para fazer download da chave pública para usar fora do AWS KMS, consulteFazer download de chaves públicas.

Ao criar um CMK para criptografar dados em um serviço da AWS,Criar uma CMK simétrica. Os serviços da AWS 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.

Você pode 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 Console de Gerenciamento da AWS 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, consulteCriar 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 umaaliasPara a CMK. O nome do alias não pode começar com aws/. Oaws/O prefixo é reservado pela Amazon Web Services para representar as CMKs gerenciadas pela AWS em sua conta.

    UmaaliasÉ um nome amigável que identifica a CMK no console do e em algumas APIs do AWS KMS. 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 do. Não é possível especificar um alias ao usar aCreateKeyMas você pode usar o console do ou aCreateAliasOperação para criar um alias para uma CMK existente. Para obter mais detalhes, consulte Usar aliases.

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

    Insira uma descrição que explique o tipo de dados que pretende proteger ou o aplicativo que pretende usar com a CMK. Não use o formato de descrição usado paraCMKs gerenciadas pela AWS. OChave mestra padrão que protege meu... quando nenhuma outra chave está definidaO formato de descrição é reservado para CMKs gerenciadas da AWS.

    Você pode adicionar uma descrição agora ou atualizá-la a qualquer momento, a menos que o estado da chave seja Pending Deletion. Para adicionar, alterar ou excluir a descrição de uma CMK existente gerenciada pelo cliente,editar a descriçãoNo Console de Gerenciamento da AWS, use aUpdateKeyDescriptionoperaçã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).

    Quando você adiciona tags aos recursos da AWS, ela gera um relatório de alocação de custos com usos e custos agrupados por tags. Tags também podem ser usadas para controlar o acesso a uma CMK. Para obter informações sobre marcação de CMKs, consulteMarcar chaveseUso do ABAC para AWS KMS.

  12. Escolha Next (Próximo).

  13. Selecione os usuários e as funções do IAM 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 chavesNa 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

    A 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 criptográficas.

  17. (Opcional) Você pode permitir que outras contas da AWS usem essa CMK para operações de criptografia. Para isso, naOutras contas da AWSNa parte inferior da página, escolhaAdicionar outra conta da AWSe insira o número de identificação da conta da AWS 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 aInterface da linha de comando da AWS (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 especificar um alias, mas você pode usar oCreateAliasPara criar um alias para o novo 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, "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, "KeyUsage": "SIGN_VERIFY" } }