Como o Amazon Elastic Block Store (Amazon EBS) usa o AWS KMS - AWS Key Management Service

Como o Amazon Elastic Block Store (Amazon EBS) usa o AWS KMS

Este tópico discute em detalhes como o Amazon Elastic Block Store (Amazon EBS) usa o AWS KMS para criptografar volumes e snapshots. Para obter instruções básicas sobre a criptografia de volumes do Amazon EBS, consulte Criptografia do Amazon EBS.

Criptografia de Amazon EBS

Quando você anexa um volume do Amazon EBS criptografado a um tipo de instância do Amazon Elastic Compute Cloud (Amazon EC2) com suporte, os dados são armazenados em repouso no volume, E/S de disco e snapshots criados do volume são todos criptografados. A criptografia ocorre nos servidores que hospedam instâncias do Amazon EC2.

Esse recurso tem suporte em todos os tipos de volume do Amazon EBS. Você acessa os volumes criptografados da mesma forma que acessa outros volumes; a criptografia e a descriptografia são manipuladas de forma transparente e elas não exigem ações adicionais de você, sua instância do EC2 ou sua aplicação. Snapshots de volumes criptografados são criptografados automaticamente, e os volumes que são criados dos snapshots criptografados também são criptografados automaticamente.

O status da criptografia de um volume do EBS é determinado quando você cria o volume. Não é possível alterar o status de criptografia de um volume existente. No entanto, você pode migrar dados entre os volumes criptografados e não criptografados, e aplicar um novo status de criptografia enquanto copia um snapshot.

Por padrão, o Amazon EBS é compatível com criptografia opcional. É possível habilitar a criptografia automaticamente em todos os novos volumes do EBS e cópias de snapshots na Conta da AWS e região. Essa configuração não afeta volumes ou snapshots existentes. Para obter mais detalhes, consulte Criptografia por padrão no Manual do usuário do Amazon EC2 para instâncias Linux ou no Manual do usuário do Amazon EC2 para instâncias Windows.

Usar chaves do KMS e chaves de dados

Ao criar um volume do Amazon EBS criptografado, você especifica uma AWS KMS key. Por padrão, o Amazon EBS usa a Chave gerenciada pela AWS para o Amazon EBS na sua conta (aws/ebs). No entanto, você pode especificar uma chave gerenciada pelo cliente que você cria e gerencia.

Para usar uma chave gerenciada pelo cliente, você deve dar ao Amazon EBS a permissão para usar a chave do KMS em seu nome. Para obter uma lista de permissões necessárias, consulte Permissões para usuários do IAM, noManual do usuário do Amazon EC2 para instâncias Linux ou no Manual do usuário do Amazon EC2 para instâncias Windows.

Importante

O Amazon EBS oferece suporte somente para chaves do KMS simétricas. Não é possível usar uma chave do KMS assimétrica para criptografar um volume do Amazon EBS. Para obter ajuda para determinar se uma chave do KMS é simétrica ou assimétrica, consulte Identificar chaves do KMS assimétricas.

Para cada volume, o Amazon EBS pede ao AWS KMS para gerar uma chave de dados exclusiva criptografada sob a chave do KMS que você especifica. O Amazon EBS armazena a chave de dados criptografada com o volume. Em seguida, quando você anexa o volume a uma instância do Amazon EC2, o Amazon EBS chama o AWS KMS para descriptografar a chave de dados. O Amazon EBS usa a chave de dados em texto simples na memória do hipervisor para criptografar toda a E/S de disco no volume. Para obter mais detalhes, consulte Como funciona a criptografia do EBS, no Manual do usuário do Amazon EC2 para instâncias Linux ou no Manual do usuário do Amazon EC2 para instâncias Windows.

Contexto de criptografia do Amazon EBS

Em suas solicitações GenerateDataKeyWithoutPlaintext e Decrypt para o AWS KMS, o Amazon EBS usa um contexto de criptografia com um par de nome/valor que identifica o volume ou snapshot na solicitação. O nome no contexto de criptografia não varia.

Um contexto de criptografia é um conjunto de pares de chave-valor que contêm dados arbitrários não secretos. Quando você inclui um contexto de criptografia em uma solicitação para criptografar dados, o AWS KMS vincula de forma criptográfica o contexto de criptografia aos dados criptografados. Para descriptografar os dados, você deve passar o mesmo contexto de criptografia.

Para todos os volumes e para snapshots criptografados criados com a operação CreateSnapshot do Amazon EBS, o Amazon EBS usa o ID do volume como valor de contexto de criptografia. No campo requestParameters de uma entrada de log do CloudTrail, o contexto de criptografia é parecido com o seguinte:

"encryptionContext": { "aws:ebs:id": "vol-0cfb133e847d28be9" }

Para snapshots criptografados criados com a operação CopySnapshot do Amazon EC2, o Amazon EBS usa o ID do snapshot como valor de contexto de criptografia. No campo requestParameters de uma entrada de log do CloudTrail, o contexto de criptografia é parecido com o seguinte:

"encryptionContext": { "aws:ebs:id": "snap-069a655b568de654f" }

Detectar falhas do Amazon EBS

Para criar um volume do EBS criptografado ou anexar o volume a uma instância do EC2, o Amazon EBS e a infraestrutura do Amazon EC2 devem poder usar a chave do KMS especificada para a criptografia de volume do EBS. Quando a chave do KMS não pode ser utilizada, por exemplo, quando seu estado de chave não está Enabled, há falha na criação ou na anexação do volume.

Nesse caso, o Amazon EBS envia um evento ao Amazon CloudWatch Events para notificar você sobre a falha. Com o CloudWatch Events, você pode estabelecer regras que acionam ações automáticas em resposta a esses eventos. Para obter mais informações, consulte Amazon CloudWatch Events para Amazon EBS, no Manual do usuário do Amazon EC2 para instâncias Linux, especialmente as seguintes seções:

Para corrigir essas falhas, verifique se a chave do KMS especificada para criptografia do volume do EBS está habilitada. Para fazer isso, primeiro visualize a chave do KMS para determinar o estado atual da chave (a coluna Status no AWS Management Console). Veja as informações em um dos links a seguir:

Como usar o AWS CloudFormation para criar volumes criptografados do Amazon EBS

Você pode usar o AWS CloudFormation para criar volumes criptografados do Amazon EBS. Para mais informações, consulte AWS::EC2::Volume no Manual do usuário do AWS CloudFormation.