Crie um AWS Cloud9 IDE que usa volumes do Amazon EBS com criptografia padrão - Recomendações da AWS

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á.

Crie um AWS Cloud9 IDE que usa volumes do Amazon EBS com criptografia padrão

Criado por Janardhan Malyala (AWS) e Dhrubajyoti Mukherjee (AWS)

Ambiente: produção

Tecnologias: Operações

Workload: todas as outras workloads

Serviços da AWS: AWS Cloud9; AWS KMS

Resumo

É possível usar criptografia por padrão para aplicar a criptografia de seus volumes e cópias de snapshots do Amazon Elastic Block Store (Amazon EBS) na Nuvem Amazon Web Services (AWS). 

Você pode criar um ambiente de desenvolvimento integrado (IDE) do AWS Cloud9 que usa volumes do EBS criptografados por padrão. No entanto, a função vinculada ao serviço do AWS Identity and Access Management (IAM) para o AWS Cloud9 exige acesso à chave do AWS Key Management Service (AWS KMS) para esses volumes do EBS. Se o acesso não for fornecido, o IDE do AWS Cloud9 pode falhar ao iniciar e a depuração poderá ser difícil. 

Esse padrão fornece as etapas para adicionar a função vinculada ao serviço para AWS Cloud9 e para a chave do AWS KMS usada pelos volumes do EBS. A configuração descrita por esse padrão ajuda você a criar e iniciar com êxito um IDE que usa volumes do EBS com criptografia por padrão.

Pré-requisitos e limitações

Pré-requisitos

Observação: Não é necessário criar um perfil vinculado ao serviço para o AWS Cloud9. Quando você cria um ambiente de desenvolvimento do AWS Cloud9, o AWS Cloud9 cria uma função vinculada ao serviço para você.

Arquitetura

Pilha de tecnologia

  • AWS Cloud9

  • IAM

  • AWS KMS

Ferramentas

  • O AWS Cloud9 é um ambiente de desenvolvimento integrado (IDE) que ajuda você a codificar, criar, executar, testar e depurar software. Ele também ajuda você a lançar software na nuvem AWS.

  • O Amazon Elastic Block Store (Amazon EBS) oferece volumes de armazenamento ao nível do bloco para usar com instâncias do Amazon Elastic Compute Cloud (Amazon EC2).

  • O AWS Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus recursos da AWS, controlando quem está autenticado e autorizado a usá-los.

  • O AWS Key Management Service (AWS KMS) ajuda você a criar e controlar chaves criptográficas para proteger seus dados.

Épicos

TarefaDescriçãoHabilidades necessárias

Registre o valor da chave de criptografia padrão para os volumes do EBS.

Faça login no Console de Gerenciamento da AWS e abra o console do Amazon EC2. Escolha o painel do EC2 e, em seguida, escolha Proteção e segurança de dados em Atributos da conta. Na seção Criptografia do EBS, copie e registre o valor na Chave de criptografia padrão.

Arquiteto de nuvem, DevOps engenheiro
TarefaDescriçãoHabilidades necessárias

Forneça ao AWS Cloud9 acesso à chave KMS para volumes do EBS.

  1. Abra o console do AWS KMS e escolha Chaves gerenciadas pelo cliente. Selecione a chave do AWS KMS usada para a criptografia do Amazon EBS e, em seguida, escolha Exibir chave.

  2. Na guia Política de chaves, confirme se você pode ver o formato de texto da política de chaves. Se você não conseguir ver o formulário de texto, escolha Mudar para visualização da política.

  3. Selecione a opção Editar. Adicione o código na seção Informações adicionais à política e escolha Salvar alterações. As mudanças na política permitem que a função vinculada ao serviço do AWS Cloud9 e AWSServiceRoleForAWSCloud9, acesse a chave.

Para mais informações sobre a atualização de uma política de chaves, consulte Como alterar uma política de chaves (documentação do AWS KMS).

Importante: a função vinculada ao serviço para o AWS Cloud9 é criada automaticamente quando você inicia seu primeiro IDE. Para mais informações, consulte Criar uma função vinculada ao serviço na documentação do AWS Cloud9. 

Arquiteto de nuvem, DevOps engenheiro
TarefaDescriçãoHabilidades necessárias

Crie e inicie o IDE do AWS Cloud9.

Abra o console do AWS Cloud9 e escolha Criar ambiente. Configure o IDE de acordo com seus requisitos seguindo as etapas de Criação de um ambiente EC2 na documentação do AWS Cloud9. 

Arquiteto de nuvem, DevOps engenheiro

Recursos relacionados

Mais informações

Atualizações da política de chave do AWS KMS

Substitua <aws_accountid> pelo seu ID de conta da AWS.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<aws_accountid>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<aws_accountid>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9" }, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": { "Bool": { "kms:GrantIsForAWSResource": "true" } } }

Usando uma chave entre contas

Se quiser usar uma chave KMS entre contas, você deve usar uma concessão em combinação com a política de chaves KMS. Isso permite o acesso entre contas à chave. Na mesma conta que você usou para criar o ambiente Cloud9, execute o comando a seguir no terminal.

aws kms create-grant \ --region <Region where Cloud9 environment is created> \ --key-id <The cross-account KMS key ARN> \ --grantee-principal arn:aws:iam::<The account where Cloud9 environment is created>:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9 \ --operations "Encrypt" "Decrypt" "ReEncryptFrom" "ReEncryptTo" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "DescribeKey" "CreateGrant"

Depois de executar esse comando, você pode criar ambientes Cloud9 usando a criptografia do EBS com uma chave em uma conta diferente.