Usar criptografia de camada dupla do lado do servidor com chaves do AWS KMS (DSSE-KMS)
O uso da criptografia de camada dupla do lado do servidor com chaves do AWS Key Management Service (AWS KMS) (DSSE-KMS) aplica duas camadas de criptografia aos objetos quando eles são carregados no Amazon S3. O DSSE-KMS ajuda a cumprir mais facilmente os padrões de conformidade que exigem que você aplique a criptografia de várias camadas aos dados e tenha controle total das chaves de criptografia.
O termo “dupla” no DSSE-KMS refere-se a duas camadas independentes de criptografia AES-256 que são aplicadas aos dados:
Primeira camada: os dados são criptografados por meio de uma chave de criptografia de dados (DEK) exclusiva gerada pelo AWS KMS.
Segunda camada: os dados já criptografados são criptografados novamente usando uma chave de criptografia AES-256 separada gerenciada pelo Amazon S3.
Isso é diferente do processo do SSE-KMS padrão, que aplica somente uma única camada de criptografia. A abordagem de camada dupla oferece segurança aprimorada, garantindo que, mesmo que uma camada de criptografia seja comprometida, os dados continuem sendo protegidos pela segunda camada. Essa segurança adicional envolve maior sobrecarga de processamento e mais chamadas de API do AWS KMS, o que justifica o custo mais alto em comparação com o SSE-KMS padrão. Para ter mais informações sobre o preço do DSSE-KMS, consulte AWS KMS key concepts no Guia do desenvolvedor do AWS Key Management Service e Preços do AWS KMS
Ao usar a criptografia DSSE-KMS com um bucket do Amazon S3, as chaves do AWS KMS devem estar na mesma região que o bucket. Além disso, quando o DSSE-KMS é solicitado para o objeto, a soma de verificação do S3 que faz parte dos metadados do objeto é armazenada em formato criptografado. Para ter mais informações sobre somas de verificação, consulte Verificar a integridade do objeto no Amazon S3.
nota
As chaves de bucket do S3 não comportam DSSE-KMS.
As principais diferenças entre o DSSE-KMS e o SSE-KMS padrão são:
Camadas de criptografia: o DSSE-KMS aplica duas camadas independentes de criptografia AES-256, enquanto o SSE-KMS padrão aplica uma camada.
Segurança: o DSSE-KMS oferece proteção aprimorada contra possíveis vulnerabilidades de criptografia.
Conformidade: o DSSE-KMS ajuda a atender aos requisitos regulatórios que exigem criptografia de várias camadas.
Desempenho: o DSSE-KMS tem latência um pouco maior devido ao processamento adicional de criptografia.
Custo: o DSSE-KMS incorre em cobranças mais altas devido à maior sobrecarga computacional e a operações adicionais do AWS KMS.
Exigir criptografia de camada dupla do lado do servidor com chaves do AWS KMS keys (DSSE-KMS)
Para exigir criptografia de camada dupla do lado do servidor de todos os objetos em um bucket específico do Amazon S3, é possível usar uma política de bucket. Por exemplo, a política de bucket a seguir negará permissão de carregamento de objeto (s3:PutObject) para todos se a solicitação não incluir um cabeçalho x-amz-server-side-encryption que solicita criptografia do lado do servidor com a DSSE-KMS.