Considerações sobre a funcionalidade Bloqueio de Objetos
A funcionalidade Bloqueio de Objetos do Amazon S3 pode ajudar a evitar que os objetos sejam excluídos ou substituídos por um período fixo ou indefinidamente.
É possível usar o console do Amazon S3, a AWS Command Line Interface (AWS CLI), os AWS SDKs ou a API REST do Amazon S3 para visualizar ou definir informações da funcionalidade Bloqueio de Objetos. Para obter informações gerais sobre os recursos da funcionalidade Bloqueio de Objetos do S3, consulte Bloquear objetos com o Bloqueio de Objetos.
Importante
-
Depois de habilitar a funcionalidade Bloqueio de Objetos em um bucket, não será possível desabilitá-la nem suspender o versionamento nesse bucket.
-
Os buckets do S3 com funcionalidade Bloqueio de Objetos não podem ser usados como buckets de destino para logs de acesso ao servidor. Para ter mais informações, consulte Registrar em log as solicitações com registro em log de acesso ao servidor.
Tópicos
- Permissões para visualizar as informações de bloqueio
- Ignorar modo de governança
- Usar a funcionalidade Bloqueio de Objetos com a funcionalidade Replicação do S3
- Usar o Bloqueio de Objetos com criptografia
- Usar a funcionalidade Bloqueio de Objetos com a funcionalidade Inventário Amazon S3
- Gerenciar políticas da funcionalidade Ciclo de Vida do S3 com a funcionalidade Bloqueio de Objetos
- Gerenciar marcadores de exclusão com a funcionalidade Bloqueio de Objetos
- Usar a funcionalidade Lente de Armazenamento do S3 com a funcionalidade Bloqueio de Objetos
- Fazer upload de objetos em um bucket habilitado para a funcionalidade Bloqueio de Objetos
- Configurar eventos e notificações
- Definir limites para os períodos de retenção com uma política de bucket
Permissões para visualizar as informações de bloqueio
É possível visualizar de forma programática o status da funcionalidade Bloqueio de Objetos de uma versão de objeto do Amazon S3 usando as operações HeadObject ou GetObject. Ambas as operações retornam o modo de retenção, a data de retenção e o status de retenção jurídica para a versão do objeto especificada. Além disso, é possível visualizar o status da funcionalidade Bloqueio de Objetos para vários objetos em um bucket do S3 usando a funcionalidade Inventário do S3.
Para exibir o modo e o período de retenção de uma versão do objeto, você deve ter a permissão s3:GetObjectRetention
. Para exibir o status de retenção legal de uma versão do objeto, você deve ter a permissão s3:GetObjectLegalHold
. Para visualizar a configuração de retenção padrão de um bucket, é necessário ter a permissão s3:GetBucketObjectLockConfiguration
. Caso você faça uma solicitação de uma configuração da funcionalidade Bloqueio de Objetos em um bucket que não tenha a funcionalidade Bloqueio de Objetos do S3 habilitada, o Amazon S3 retornará um erro.
Ignorar modo de governança
Se você tiver a permissão s3:BypassGovernanceRetention
, poderá realizar operações em versões de objeto bloqueadas no modo de governança como se elas estivessem desprotegidas. Essas operações incluem a exclusão de uma versão do objeto, a redução do período de retenção ou a remoção do período de retenção da funcionalidade Bloqueio de Objetos com a colocação de uma nova solicitação PutObjectRetention
com parâmetros vazios.
Para ignorar o modo de governança, você deve indicar explicitamente na solicitação que você deseja ignorar esse modo. Para fazer isso, inclua o cabeçalho x-amz-bypass-governance-retention:true
na solicitação da operação de API PutObjectRetention
ou use o parâmetro equivalente com solicitações feitas por meio da AWS CLI ou dos AWS SDKs. O console do S3 aplicará automaticamente esse cabeçalho para solicitações feitas por meio do console do S3 se você tiver a permissão s3:BypassGovernanceRetention
.
nota
Ignorar o modo de governança não afeta o status de retenção legal de uma versão do objeto. Caso uma versão do objeto tenha uma retenção jurídica habilitada, essa retenção permanecerá em vigor e evitará que solicitações substituam ou excluam a versão do objeto.
Usar a funcionalidade Bloqueio de Objetos com a funcionalidade Replicação do S3
Você pode usar a funcionalidade Bloqueio de Objetos com a funcionalidade Replicação do S3 para habilitar a cópia automática e assíncrona de objetos bloqueados e seus metadados de retenção em buckets do S3. Isso significa que, para objetos replicados, o Amazon S3 usa a configuração de bloqueio de objetos do bucket de origem. Em outras palavras, se o bucket de origem tiver o recurso Bloqueio de Objetos habilitado, os buckets de destino também deverão ter esse recurso habilitado. Se um objeto for carregado diretamente no bucket de destino (fora da replicação do S3), ele usará o Bloqueio de Objetos definido no bucket de destino. Ao usar a replicação, os objetos em um bucket de origem são replicados para um ou mais buckets de destino.
Para configurar a replicação em um bucket com a funcionalidade Bloqueio de Objetos habilitada, você pode usar o console do S3, a AWS CLI, a API REST do Amazon S3 ou os AWS SDKs.
nota
Para usar a funcionalidade Bloqueio de Objetos com replicação, é necessário conceder duas permissões adicionais no bucket de origem do S3 no perfil do AWS Identity and Access Management (IAM) usado para configurar a replicação. As duas permissões adicionais são s3:GetObjectRetention
e s3:GetObjectLegalHold
. Se o perfil tiver uma instrução de permissão s3:Get*
, essa instrução satisfará o requisito. Para ter mais informações, consulte Configurar permissões para replicação em tempo real.
Para obter informações gerais sobre a funcionalidade Replicação do S3, consulte Replicar objetos dentro de uma região e entre regiões.
Para obter exemplos de configuração da funcionalidade Replicação do S3, consulte Exemplos para configurar a replicação em tempo real.
Usar o Bloqueio de Objetos com criptografia
O Amazon S3 criptografa todos os objetos novos por padrão. É possível usar o Bloqueio de Objetos com objetos criptografados. Para ter mais informações, consulte Proteger dados com criptografia.
Embora o Bloqueio de Objetos possa ajudar a evitar que os objetos do Amazon S3 sejam excluídos ou substituídos, ele não oferece proteção contra a perda de acesso às chaves de criptografia ou a exclusão dessas chaves. Por exemplo, se você criptografar os objetos com a criptografia do lado do servidor do AWS KMS e a chave do AWS KMS for excluída, os objetos poderão ficar ilegíveis.
Usar a funcionalidade Bloqueio de Objetos com a funcionalidade Inventário Amazon S3
Você pode configurar a funcionalidade Inventário Amazon S3 para criar listas dos objetos em um bucket do S3 com base em uma programação definida. Você pode configurar a funcionalidade Inventário Amazon S3 para incluir os seguintes metadados da funcionalidade Bloqueio de Objetos para os objetos:
-
O prazo de retenção
-
O modo de retenção
-
O status da retenção jurídica
Para ter mais informações, consulte Catalogar e analisar seus dados com o Inventário S3.
Gerenciar políticas da funcionalidade Ciclo de Vida do S3 com a funcionalidade Bloqueio de Objetos
As configurações de gerenciamento de ciclo de vida do objeto continuam funcionando normalmente em objetos protegidos, inclusive a colocação de marcadores de exclusão. No entanto, uma versão bloqueada de um objeto não pode ser excluída por uma política de expiração da funcionalidade Ciclo de Vida do S3. A funcionalidade Bloqueio de Objetos é mantida independentemente da classe de armazenamento em que o objeto reside, bem como durante as transições da funcionalidade Ciclo de Vida do S3 entre classes de armazenamento.
Para obter mais informações sobre como gerenciar ciclos de vida de objetos, consulte Gerenciar o ciclo de vida dos objetos.
Gerenciar marcadores de exclusão com a funcionalidade Bloqueio de Objetos
Embora possa excluir uma versão do objeto protegida, você ainda pode criar um marcador de exclusão para esse objeto. A colocação de um marcador de exclusão em um objeto não exclui o objeto nem suas versões. No entanto, isso faz com que o Amazon S3 se comporte na maioria das vezes como se o objeto tivesse sido excluído. Para obter mais informações, consulte Trabalhar com marcadores de exclusão.
nota
Os marcadores de exclusão não são protegidos por WORM, independentemente de qualquer período de retenção ou da retenção legal no objeto subjacente.
Usar a funcionalidade Lente de Armazenamento do S3 com a funcionalidade Bloqueio de Objetos
Para ver métricas de bytes de armazenamento e contagem de objetos com Bloqueio de Objeto habilitado, você pode usar a Lente de Armazenamento do Amazon S3. A Lente de Armazenamento do S3 é um recurso de análise de armazenamento em nuvem que você pode usar para obter visibilidade em toda a organização sobre o uso e a atividade do armazenamento de objetos.
Para ter mais informações, consulte Usar a Lente de Armazenamento do S3 para proteger seus dados.
Para obter uma lista completa de métricas, consulte Glossário de métricas de lente de armazenamento do Amazon S3.
Fazer upload de objetos em um bucket habilitado para a funcionalidade Bloqueio de Objetos
O cabeçalho Content-MD5
ou x-amz-sdk-checksum-algorithm
é necessário em todas as solicitações de upload de um objeto com um período de retenção configurado usando o Bloqueio de Objetos. Esses cabeçalhos são uma forma de verificar a integridade do objeto durante o upload.
Quando um objeto é carregado com o console do Amazon S3, o S3 adiciona automaticamente o cabeçalho Content-MD5
. Opcionalmente, você pode especificar uma função de soma de verificação adicional e um valor de soma de verificação por meio do console como o cabeçalho x-amz-sdk-checksum-algorithm
. Se você usar a API PutObject, deverá especificar o cabeçalho Content-MD5
, o cabeçalho x-amz-sdk-checksum-algorithm
ou ambos para configurar o período de retenção do Bloqueio de Objetos.
Para ter mais informações, consulte Verificar a integridade do objeto.
Configurar eventos e notificações
Use a funcionalidade Notificações de Eventos do Amazon S3 para rastrear o acesso e as alterações feitas nas configurações da funcionalidade Bloqueio de Objetos e nos dados usando o AWS CloudTrail. Para obter informações sobre o CloudTrail, consulte O que é AWS CloudTrail? no Guia do Usuário do AWS CloudTrail.
Você também pode usar o Amazon CloudWatch para gerar alertas com base nesses dados. Para obter informações sobre o CloudWatch, consulte O que é o Amazon CloudWatch? no Guia do usuário do Amazon CloudWatch.
Definir limites para os períodos de retenção com uma política de bucket
É possível definir os períodos de retenção mínimo e máximo permitidos para um bucket usando uma política de bucket. O período máximo de retenção é de cem anos.
O exemplo a seguir mostra uma política de bucket que usa a chave de condição s3:object-lock-remaining-retention-days
para definir um período de retenção máximo de 10 dias.
{ "Version": "2012-10-17", "Id": "
SetRetentionLimits
", "Statement": [ { "Sid": "SetRetentionPeriod
", "Effect": "Deny", "Principal": "*", "Action": [ "s3:PutObjectRetention" ], "Resource": "arn:aws:s3:::/*", "Condition": { "NumericGreaterThan": { "s3:object-lock-remaining-retention-days": "10" } } } ] }
amzn-s3-demo-bucket1
nota
Se o seu bucket for o bucket de destino de uma configuração de replicação, você poderá definir períodos de retenção mínimo e máximo permitidos para as réplicas de objetos criadas usando a replicação. Para fazer isso, você deve permitir a ação s3:ReplicateObject
na política de bucket. Para obter mais informações sobre as permissões de replicação, consulte Configurar permissões para replicação em tempo real.
Para obter mais informações sobre políticas de bucket, consulte os seguintes tópicos:
-
Actions, resources, and condition keys for Amazon S3 na Referência de autorização do serviço
Para ter mais informações sobre as permissões referentes a operações de API do S3 de acordo com os tipos de recurso do S3, consulte Permissões obrigatórias para operações de API do Amazon S3.