Considerações sobre a funcionalidade Bloqueio de Objetos - Amazon Simple Storage Service

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 Usar o bloqueio de objetos do S3.

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.

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 Configuração de permissões.

Para obter informações gerais sobre a funcionalidade Replicação do S3, consulte Replicação de objetos.

Para obter exemplos de configuração da funcionalidade Replicação do S3, consulte Demonstrações: exemplos para configurar a replicação.

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 Inventário do Amazon 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 Gerenciando seu ciclo de vida de armazenamento.

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 é necessário em todas as solicitações de upload de objeto com período de retenção configurado usando a funcionalidade Bloqueio de Objetos. O resumo MD5 é uma forma de verificar a integridade do objeto depois de fazer upload dele em um bucket. Após o carregamento do objeto, o Amazon S3 calcula o resumo MD5 do objeto e o compara com o valor que você forneceu. A solicitação só será bem-sucedida se os dois resumos corresponderem. O console do S3 adiciona automaticamente esse cabeçalho, mas você precisa especificá-lo ao usar a API PutObject.

Para ter mais informações, consulte Usar Content-MD5 ao carregar objetos.

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:::DOC-EXAMPLE-BUCKET1/*", "Condition": { "NumericGreaterThan": { "s3:object-lock-remaining-retention-days": "10" } } } ] }
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 Configuração de permissões.

Para obter mais informações sobre políticas de bucket, consulte os seguintes tópicos: