Configurar a funcionalidade Bloqueio de Objetos do S3
Com a funcionalidade Bloqueio de Objetos do Amazon S3, é possível armazenar objetos no Amazon S3 usando um modelo de gravação única e várias leituras (WORM). Você pode usar o bloqueio de objetos do S3 para evitar que um objeto seja excluído ou substituído por um período fixo ou indefinidamente. Para obter informações gerais sobre os recursos da funcionalidade Bloqueio de Objetos, consulte Usar o bloqueio de objetos do S3.
Antes de bloquear qualquer objeto, é necessário habilitar as funcionalidades Versionamento e Bloqueio de Objetos do S3 em um bucket. Depois, você pode definir um período de retenção, uma retenção jurídica ou ambos.
Para trabalhar com a funcionalidade Bloqueio de Objetos, é necessário ter determinadas permissões. Para obter uma lista das permissões relacionadas a várias operações da funcionalidade Bloqueio de Objetos, consulte Permissões obrigatórias .
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
- Habilitar a funcionalidade Bloqueio de Objetos ao criar um bucket do S3
- Habilitar a funcionalidade Bloqueio de Objetos em um bucket do S3 existente
- Definir ou modificar uma retenção jurídica em um objeto do S3
- Definir ou modificar um período de retenção em um objeto do S3
- Definir ou modificar um período de retenção padrão em um bucket do S3
Habilitar a funcionalidade Bloqueio de Objetos ao criar um bucket do S3
Você pode habilitar a funcionalidade Bloqueio de Objetos ao criar um bucket do S3 usando o console do Amazon S3, a AWS Command Line Interface (AWS CLI), os AWS SDKs ou a API REST do Amazon S3.
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
No painel de navegação à esquerda, escolha Buckets.
-
Selecione Create bucket (Criar bucket).
A página Create bucket (Criar bucket) é aberta.
-
Para Nome do bucket, insira um nome para o bucket.
nota
Depois de criar um bucket, não será possível mudar o nome dele. Para obter mais informações sobre como nomear buckets, consulte Regras de nomeação de bucket.
-
Em Region (Região), escolha a Região da AWS onde deseja que o bucket resida.
-
Em Propriedade de Objetos, escolha desabilitar ou habilitar as listas de controle de acesso (ACLs) e controlar a propriedade de objetos carregados no bucket.
-
Em Configurações de bloqueio de acesso público para este bucket, selecione as configurações de bloqueio de acesso público que deseja aplicar ao bucket.
-
Em Versionamento de bucket, escolha Habilitado.
A funcionalidade Bloqueio de Objetos só funciona em buckets com versionamento.
-
(Opcional) Em Tags (Etiquetas), você pode optar por adicionar etiquetas ao seu bucket. As etiquetas são pares de chave-valor usados para categorizar o armazenamento e alocar os custos.
-
Em Configurações avançadas, encontre Bloqueio de objeto e escolha Habilitar.
Você deve reconhecer que a ativação da funcionalidade Bloqueio de Objetos permitirá permanentemente que os objetos desse bucket sejam bloqueados.
-
Selecione Criar bucket.
O seguinte exemplo create-bucket
cria um bucket do S3 chamado
com a funcionalidade Bloqueio de Objetos habilitada:amzn-s3-demo-bucket1
aws s3api create-bucket --bucket
--object-lock-enabled-for-bucket
amzn-s3-demo-bucket1
Para obter mais informações e exemplos, consulte create-bucket
nota
Você pode executar comandos da AWS CLI pelo console usando o AWS CloudShell. O AWS CloudShell é um shell pré-autenticado e baseado em navegador que você pode inicializar diretamente do AWS Management Console. Para obter mais informações, consulte What is CloudShell? no Guia do usuário do AWS CloudShell.
É possível usar a API REST para criar um bucket do S3 com a funcionalidade Bloqueio de Objetos habilitada. Para obter mais informações, consulte CreateBucket na Referência da API do Amazon Simple Storage Service.
Consulte exemplos de como habilitar o Bloqueio de Objetos ao criar um bucket do S3 com os SDKs da AWS em Usar CreateBucket com o AWS SDK ou a CLI.
Consulte exemplos de como obter a configuração atual do Bloqueio de Objetos com os SDKs da AWS em Usar GetObjectLockConfiguration com o AWS SDK ou a CLI.
Para conferir um cenário interativo que demonstra os diferentes recursos da funcionalidade Bloqueio de Objetos usando os AWS SDKs, consulte Trabalhar com os recursos de bloqueio de objetos do Amazon S3 usando um SDK da AWS.
Para obter informações gerais sobre como usar AWS SDKs diferentes, consulte Desenvolvimento com o Amazon S3 usando AWS SDKs.
Habilitar a funcionalidade Bloqueio de Objetos em um bucket do S3 existente
Você pode habilitar a funcionalidade Bloqueio de Objetos para um bucket do S3 existente usando o console do Amazon S3, a AWS CLI, os AWS SDKs ou a API REST do Amazon S3.
nota
A funcionalidade Bloqueio de Objetos só funciona em buckets com versionamento.
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
No painel de navegação à esquerda, escolha Buckets.
-
Na lista Buckets, escolha o nome do bucket para o qual você deseja habilitar a funcionalidade Bloqueio de Objetos.
-
Escolha a guia Properties (Propriedades).
-
Em Propriedades, role para baixo até a seção Bloqueio de objeto e escolha Editar.
-
Em Bloqueio de objeto, escolha Habilitar.
Você deve reconhecer que a ativação da funcionalidade Bloqueio de Objetos permitirá permanentemente que os objetos desse bucket sejam bloqueados.
-
Selecione Save changes.
O seguinte exemplo de comando put-object-lock-configuration
define um período de retenção de 50 dias da funcionalidade Bloqueio de Objetos em um bucket chamado
:amzn-s3-demo-bucket1
aws s3api put-object-lock-configuration --bucket
--object-lock-configuration=
amzn-s3-demo-bucket1
'{ "ObjectLockEnabled": "Enabled", "Rule": { "DefaultRetention": { "Mode": "COMPLIANCE", "Days": 50 }}}'
Para obter mais informações e exemplos, consulte put-object-lock-configuration
nota
Você pode executar comandos da AWS CLI pelo console usando o AWS CloudShell. O AWS CloudShell é um shell pré-autenticado e baseado em navegador que você pode inicializar diretamente do AWS Management Console. Para obter mais informações, consulte What is CloudShell? no Guia do usuário do AWS CloudShell.
Você pode usar a API REST do Amazon S3 para habilitar a funcionalidade Bloqueio de Objetos em um bucket do S3 existente. Para obter mais informações, consulte PutObjectLockConfiguration na Referência da API do Amazon Simple Storage Service.
Consulte exemplos de como habilitar o Bloqueio de Objetos para um bucket do S3 existente com os SDKs da AWS em Usar PutObjectLockConfiguration com o AWS SDK ou a CLI.
Consulte exemplos de como obter a configuração atual do Bloqueio de Objetos com os SDKs da AWS em Usar GetObjectLockConfiguration com o AWS SDK ou a CLI.
Para conferir um cenário interativo que demonstra os diferentes recursos da funcionalidade Bloqueio de Objetos usando os AWS SDKs, consulte Trabalhar com os recursos de bloqueio de objetos do Amazon S3 usando um SDK da AWS.
Para obter informações gerais sobre como usar AWS SDKs diferentes, consulte Desenvolvimento com o Amazon S3 usando AWS SDKs.
Definir ou modificar uma retenção jurídica em um objeto do S3
Você pode definir ou remover uma retenção jurídica de um objeto do S3 usando o console do Amazon S3, a AWS CLI, os AWS SDKs ou a API REST do Amazon S3.
Importante
-
Se você quiser definir uma retenção jurídica em um objeto, o bucket do objeto já deverá ter a funcionalidade Bloqueio de Objetos habilitada.
-
Quando você usa
PUT
em uma versão de objeto que tem um modo e um período de retenção individual explícitos em um bucket, as configurações individuais da funcionalidade Bloqueio de Objetos da versão do objeto substituem qualquer configuração de retenção de propriedades do bucket.
Para ter mais informações, consulte Retenções legais.
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
No painel de navegação à esquerda, escolha Buckets.
-
Na lista Buckets, escolha o nome do bucket que contém o objeto no qual você deseja definir ou modificar uma retenção jurídica.
-
Na lista Objetos, selecione o objeto no qual você deseja definir ou modificar uma retenção jurídica.
-
Na página Propriedades do objeto, encontre a seção Retenção jurídica do Bloqueio de objeto e escolha Editar.
-
Escolha Habilitar para definir uma retenção jurídica ou Desabilitar para remover uma retenção jurídica.
-
Selecione Save changes.
O seguinte exemplo de put-object-legal-hold
define uma retenção jurídica no objeto
no bucket chamado my-image.fs
:amzn-s3-demo-bucket1
aws s3api put-object-legal-hold --bucket
--key
amzn-s3-demo-bucket1
my-image.fs
--legal-hold="Status=ON"
O seguinte exemplo de put-object-legal-hold
remove uma retenção jurídica do objeto
no bucket chamado my-image.fs
:amzn-s3-demo-bucket1
aws s3api put-object-legal-hold --bucket
--key
amzn-s3-demo-bucket1
my-image.fs
--legal-hold="Status=OFF"
Para obter mais informações e exemplos, consulte put-object-legal-hold
nota
Você pode executar comandos da AWS CLI pelo console usando o AWS CloudShell. O AWS CloudShell é um shell pré-autenticado e baseado em navegador que você pode inicializar diretamente do AWS Management Console. Para obter mais informações, consulte What is CloudShell? no Guia do usuário do AWS CloudShell.
É possível usar a API REST para definir ou modificar uma retenção jurídica em um objeto. Para obter mais informações, consulte PutObjectLegalHold na Referência da API do Amazon Simple Storage Service.
Consulte exemplos de como definir uma retenção legal em um objeto com os SDKs da AWS em Usar PutObjectLegalHold com o AWS SDK ou a CLI.
Consulte exemplos de como obter o status atual de retenção legal com os SDKs da AWS em Obter a configuração de retenção legal de um objeto do Amazon S3 usando um SDK da AWS.
Para conferir um cenário interativo que demonstra os diferentes recursos da funcionalidade Bloqueio de Objetos usando os AWS SDKs, consulte Trabalhar com os recursos de bloqueio de objetos do Amazon S3 usando um SDK da AWS.
Para obter informações gerais sobre como usar AWS SDKs diferentes, consulte Desenvolvimento com o Amazon S3 usando AWS SDKs.
Definir ou modificar um período de retenção em um objeto do S3
Você pode definir ou modificar um período de retenção em um objeto do S3 usando o console do Amazon S3, a AWS CLI, os AWS SDKs ou a API REST do Amazon S3.
Importante
-
Se você quiser definir um período de retenção em um objeto, o bucket do objeto já deverá ter a funcionalidade Bloqueio de Objetos habilitada.
-
Quando você usa
PUT
em uma versão de objeto que tem um modo e um período de retenção individual explícitos em um bucket, as configurações individuais da funcionalidade Bloqueio de Objetos da versão do objeto substituem qualquer configuração de retenção de propriedades do bucket. -
A única maneira de excluir um objeto no modo de conformidade antes da data de retenção é excluir a Conta da AWS associada.
Para ter mais informações, consulte Períodos de retenção.
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
No painel de navegação à esquerda, escolha Buckets.
-
Na lista Buckets, escolha o nome do bucket que contém o objeto no qual você deseja definir ou modificar um período de retenção.
-
Na lista Objetos, selecione o objeto no qual você deseja definir ou modificar um período de retenção.
-
Na página Propriedades do objeto, encontre a seção Retenção de Bloqueio de objetos e escolha Editar.
-
Em Retenção, escolha Habilitar para definir um período de retenção ou Desabilitar para remover um período de retenção.
-
Se você escolher Habilitar, em Modo de retenção, escolha o Modo de governança ou o Modo de conformidade. Para ter mais informações, consulte Modos de retenção.
-
Em Prazo de retenção, escolha a data em que deseja que o período de retenção termine. Durante esse período, o objeto será protegido por WORM e não poderá ser substituído nem excluído. Para ter mais informações, consulte Períodos de retenção.
-
Selecione Save changes.
O seguinte exemplo de put-object-retention
define um período de retenção no objeto
no bucket chamado my-image.fs
até 1.º de janeiro de 2025:amzn-s3-demo-bucket1
aws s3api put-object-retention --bucket
--key
amzn-s3-demo-bucket1
my-image.fs
--retention='{ "Mode": "GOVERNANCE", "RetainUntilDate": "2025-01-01T00:00:00" }'
Para obter mais informações e exemplos, consulte put-object-retention
nota
Você pode executar comandos da AWS CLI pelo console usando o AWS CloudShell. O AWS CloudShell é um shell pré-autenticado e baseado em navegador que você pode inicializar diretamente do AWS Management Console. Para obter mais informações, consulte What is CloudShell? no Guia do usuário do AWS CloudShell.
É possível usar a API REST para definir um período de retenção em um objeto. Para obter mais informações, consulte PutObjectRetention na Referência da API do Amazon Simple Storage Service.
Consulte exemplos de como definir um período de retenção em um objeto com os SDKs da AWS em Usar PutObjectRetention com o AWS SDK ou a CLI.
Consulte exemplos de como obter o período de retenção em um objeto com os SDKs da AWS em Usar GetObjectRetention com o AWS SDK ou a CLI.
Para conferir um cenário interativo que demonstra os diferentes recursos da funcionalidade Bloqueio de Objetos usando os AWS SDKs, consulte Trabalhar com os recursos de bloqueio de objetos do Amazon S3 usando um SDK da AWS.
Para obter informações gerais sobre como usar AWS SDKs diferentes, consulte Desenvolvimento com o Amazon S3 usando AWS SDKs.
Definir ou modificar um período de retenção padrão em um bucket do S3
Você pode definir ou modificar um período de retenção padrão em um bucket do S3 usando o console do Amazon S3, a AWS CLI, os AWS SDKs ou a API REST do Amazon S3. Especifique uma duração, em dias ou anos, para proteger cada versão do objeto colocada no bucket.
Importante
-
Se você quiser definir um período de retenção padrão em um bucket, o bucket já deverá ter a funcionalidade Bloqueio de Objetos habilitada.
-
Quando você usa
PUT
em uma versão de objeto que tem um modo e um período de retenção individual explícitos em um bucket, as configurações individuais da funcionalidade Bloqueio de Objetos da versão do objeto substituem qualquer configuração de retenção de propriedades do bucket. -
A única maneira de excluir um objeto no modo de conformidade antes da data de retenção é excluir a Conta da AWS associada.
Para ter mais informações, consulte Períodos de retenção.
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
No painel de navegação à esquerda, escolha Buckets.
-
Na lista Buckets, escolha o nome do bucket no qual você deseja definir ou modificar um período de retenção padrão.
-
Escolha a guia Properties (Propriedades).
-
Em Propriedades, role para baixo até a seção Bloqueio de objeto e escolha Editar.
-
Em Retenção padrão, escolha Habilitar para definir uma retenção padrão ou Desabilitar para remover uma retenção padrão.
-
Se você escolher Habilitar, em Modo de retenção, escolha o Modo de governança ou o Modo de conformidade. Para ter mais informações, consulte Modos de retenção.
-
Em Período de retenção padrão, escolha o número de dias ou anos para a duração do período de retenção. Os objetos colocados nesse bucket ficarão bloqueados durante esse número de dias ou anos. Para ter mais informações, consulte Períodos de retenção.
-
Selecione Save changes.
O seguinte exemplo de comando put-object-lock-configuration
define um período de retenção de 50 dias da funcionalidade Bloqueio de Objetos no bucket chamado
usando o modo de conformidade:amzn-s3-demo-bucket1
aws s3api put-object-lock-configuration --bucket
--object-lock-configuration=
amzn-s3-demo-bucket1
'{ "ObjectLockEnabled": "Enabled", "Rule": { "DefaultRetention": { "Mode": "COMPLIANCE", "Days": 50 }}}'
O seguinte exemplo de put-object-lock-configuration
remove a configuração de retenção padrão de um bucket:
aws s3api put-object-lock-configuration --bucket
--object-lock-configuration=
amzn-s3-demo-bucket1
'{ "ObjectLockEnabled": "Enabled"}'
Para obter mais informações e exemplos, consulte put-object-lock-configuration
nota
Você pode executar comandos da AWS CLI pelo console usando o AWS CloudShell. O AWS CloudShell é um shell pré-autenticado e baseado em navegador que você pode inicializar diretamente do AWS Management Console. Para obter mais informações, consulte What is CloudShell? no Guia do usuário do AWS CloudShell.
É possível usar a API REST para definir um período de retenção padrão em um bucket do S3 disponível. Para obter mais informações, consulte PutObjectLockConfiguration na Referência da API do Amazon Simple Storage Service.
Consulte exemplos de como definir um período de retenção padrão em um bucket do S3 existente com os SDKs da AWS em Usar PutObjectLockConfiguration com o AWS SDK ou a CLI.
Para conferir um cenário interativo que demonstra os diferentes recursos da funcionalidade Bloqueio de Objetos usando os AWS SDKs, consulte Trabalhar com os recursos de bloqueio de objetos do Amazon S3 usando um SDK da AWS.
Para obter informações gerais sobre como usar AWS SDKs diferentes, consulte Desenvolvimento com o Amazon S3 usando AWS SDKs.