Definir o comportamento padrão da criptografia para os buckets do Amazon S3 - Amazon Simple Storage Service

Definir o comportamento padrão da criptografia para os buckets do Amazon S3

Com a criptografia padrão do Amazon S3, você pode definir o comportamento de criptografia padrão para um bucket do S3 para que todos os novos objetos sejam criptografados quando estiverem armazenados no bucket. Os objetos são criptografados usando a criptografia no lado do servidor com as chaves gerenciadas pelo Amazon S3 (SSE-S3) ou AWS KMS keys armazenadas no AWS Key Management Service (AWS KMS) (SSE-KMS).

Ao configurar seu bucket para usar criptografia padrão com o SSE-KMS, você também pode habilitar o recurso de chaves de bucket do S3 para diminuir o tráfego de solicitações do Amazon S3 para o AWS Key Management Service (AWS KMS) e reduzir o custo de criptografia. Para obter mais informações, consulte Redução do custo do SSE-KMS com chaves de bucket do Amazon S3.

Quando você usa a criptografia no lado do servidor, o Amazon S3 criptografa um objeto antes de salvá-lo no disco e o descriptografa quando você faz download dele. Para obter mais informações sobre como proteger dados usando a criptografia do lado do servidor e o gerenciamento de chaves de criptografia, consulte Proteção de dados usando criptografia no lado do servidor.

Para obter mais informações sobre permissões necessárias para criptografia padrão, consulte PutBucketEncryption na Referência da API do Amazon Simple Storage Service.

Para configurar a criptografia padrão em um bucket, use o console do Amazon S3, a AWS CLI, os AWS SDKs ou a API REST. Para obter mais informações, consulte Habilitar a criptografia de bucket padrão do Amazon S3.

Criptografar objetos existentes

Para criptografar objetos existentes do Amazon S3 com uma única solicitação, você pode usar o Amazon S3 Batch Operations. Você fornece uma lista de objetos às operações em lote do S3 que, por sua vez, chamam a respectiva API para realizar a operação especificada. É possível usar a operação Copy do Batch Operations para copiar objetos não criptografados existentes e gravá-los de volta no mesmo bucket que os objetos criptografados. Um único trabalho do Batch Operations pode realizar a operação especificada em bilhões de objetos. Para obter mais informações, consulte Executar operações em lote de grande escala em objetos do Amazon S3 e a publicação do Blog de armazenamento da AWS Criptografia de objetos existentes com o Amazon S3 Batch Operations.

Você também pode criptografar objetos existentes usando a API Copy Object. Para obter mais informações, consulte a publicação do Blog de armazenamento da AWS Criptografia de objetos existentes do Amazon S3 com a AWS CLI.

nota

Os buckets do Amazon S3 com criptografia de bucket padrão que usam SSE-KMS não podem ser usados como buckets de destino para Registrar em log as solicitações com registro em log de acesso ao servidor. Somente a criptografia padrão SSE-S3 é suportada para buckets de destino do log de acesso do servidor.

Usar criptografia para operações entre contas

Esteja ciente do seguinte ao usar criptografia para operações entre contas:

  • A chave gerenciada da AWS (aws/s3) é usada quando um alias ou nome do recurso da Amazon (ARN) AWS KMS key não é fornecido no momento da solicitação nem por meio da configuração de criptografia padrão do bucket.

  • Se você estiver carregando ou acessando objetos do S3 usando as entidades do AWS Identity and Access Management (IAM) que estão na mesma Conta da AWS da sua chave do KMS, você poderá usar a chave gerenciada pela AWS (aws/s3).

  • Use uma chave gerenciada pelo cliente se desejar conceder acesso entre contas aos objetos do S3. Você pode configurar a política de uma chave gerenciada pelo cliente para permitir o acesso de outra conta.

  • Se especificar sua própria chave do KMS, você deve usar um ARN de chave do KMS totalmente qualificado. Ao usar um alias da chave do KMS, esteja ciente de que o AWS KMS resolverá na chave na conta do solicitante. Isso pode resultar em dados criptografados com uma chave do KMS que pertence ao solicitante, e não ao administrador do bucket.

  • É necessário especificar uma chave para a qual você (o solicitante) recebeu a permissão Encrypt. Para obter mais informações, consulte Permitir que os usuários da chave usem uma chave do KMS para operações criptográficas no Guia do desenvolvedor do AWS Key Management Service.

Para obter mais informações sobre quando usar as chaves gerenciadas pelo cliente e as chaves do KMS gerenciadas pela AWS, consulte Devo usar uma chave gerenciada pela AWS ou uma chave gerenciada pelo cliente para criptografar meus objetos no Amazon S3?

Como usar a criptografia padrão com a replicação

Ao habilitar a criptografia padrão para um bucket de destino de replicação, o seguinte comportamento de criptografia será aplicado:

  • Se os objetos no bucket de origem não estiverem criptografados, os objetos de réplica no bucket de destino serão criptografados usando as configurações de criptografia padrão do bucket de destino. Isso faz com que a ETag do objeto de origem seja diferente da ETag do objeto de réplica. Você precisa atualizar os aplicativos que usam a ETag para acomodar essa diferença.

  • Se os objetos no bucket de origem forem criptografados usando SSE-S3 ou SSE-KMS, os objetos de réplica no bucket de destino usarão a mesma criptografia que a criptografia do objeto de origem. As configurações de criptografia padrão do bucket de destino não são usadas.

Para obter mais informações sobre como usar a criptografia padrão com SSE-KMS, consulte Replicar objetos criptografados.

Usar Chaves de bucket do Amazon S3 com criptografia padrão

Quando você configura seu bucket para usar criptografia padrão para SSE-KMS em novos objetos, você também pode configurar o recurso Chave de bucket do S3. As chaves de bucket do S3 diminuem o número de transações do Amazon S3 para o AWS KMS a fim de reduzir o custo da criptografia do lado do servidor usando AWS Key Management Service (SSE-KMS).

Quando você configura seu bucket para usar chaves de bucket do S3 para SSE-KMS em novos objetos, o AWS KMS gera uma chave no nível de bucket usada para criar uma chave de dados exclusiva para objetos no bucket. Essa chave de bucket é usada por um período limitado no Amazon S3, reduzindo a necessidade do Amazon S3 fazer solicitações ao AWS KMS para concluir operações de criptografia.

Para obter mais informações sobre como usar uma Chave de bucket do S3, consulte Uso de chaves de bucket do Amazon S3.