Nesta página, descrevemos como usar o recurso Bloqueio de intervalo, incluindo trabalhar com políticas de retenção e bloqueá-los permanentemente em intervalos.
Antes de começar
Antes de usar o recurso Bloqueio de bucket, confira se as etapas nas seções a seguir foram concluídas.
Acessar os papéis necessários
Para ter as permissões necessárias para usar o bloqueio de bucket, peça ao administrador para conceder a você o papel de Administrador do Storage (roles/storage.admin
) no bucket. Este papel predefinido contém as permissões necessárias para usar o bloqueio de bucket. Para ver as permissões necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
storage.buckets.get
storage.buckets.list
- Essa permissão só é necessária ao usar o console do Google Cloud para executar as instruções nesta página.
storage.buckets.update
Talvez você também consiga receber essas permissões com papéis personalizados.
Para informações sobre como conceder papéis nos buckets, consulte Usar o IAM com buckets.
Definir uma política de armazenamento em um bucket
Para adicionar, modificar ou remover uma política de armazenamento em um bucket:
Console
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket com a política de retenção que você quer alterar.
Selecione a guia Proteção na parte superior da página.
Na seção Política de retenção, defina a política de retenção:
Se nenhuma política de retenção se aplicar ao bucket, clique no link add_boxDefinir política de retenção. Escolha uma unidade de tempo e uma duração para o período de retenção.
Se uma política de retenção se aplicar a um bucket atualmente, ela aparecerá na seção. Clique em Editar para modificar o tempo de retenção ou em Excluir para remover completamente a política de retenção.
Consulte Períodos de armazenamento para informações sobre como o console do Google Cloud converte entre diferentes unidades de tempo.
Para saber como acessar informações detalhadas de erro sobre operações do Cloud Storage com falha no console do Google Cloud, consulte Solução de problemas.
Linha de comando
Use o comando gcloud storage buckets update
com a flag apropriada:
gcloud storage buckets update gs://BUCKET_NAME FLAG
Em que:
BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.FLAG
é a configuração desejada para o período de armazenamento do bucket. Use um dos seguintes formatos:--retention-period
e um período de armazenamento, se você quiser adicionar ou alterar uma política de retenção. Por exemplo,--retention-period=1d43200s
.--clear-retention-period
, se você quiser remover a política de retenção do bucket.
Se bem-sucedida, a resposta terá esta aparência:
Updating gs://my-bucket/... Completed 1
Bibliotecas de cliente
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage C++.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
C#
Para mais informações, consulte a documentação de referência da API Cloud Storage C#.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
Go
Para mais informações, consulte a documentação de referência da API Cloud Storage Go.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
Node.js
Para mais informações, consulte a documentação de referência da API Cloud Storage Node.js.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
PHP
Para mais informações, consulte a documentação de referência da API Cloud Storage PHP.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
Python
Para mais informações, consulte a documentação de referência da API Cloud Storage Python.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
Ruby
Para mais informações, consulte a documentação de referência da API Cloud Storage Ruby.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma política de retenção em um bucket:
Veja no exemplo a seguir como remover a política de retenção a partir de um bucket:
APIs REST
API JSON
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Crie um arquivo JSON com as informações a seguir:
{ "retentionPolicy": { "retentionPeriod": "TIME_IN_SECONDS" } }
Em que
TIME_IN_SECONDS
é a quantidade de tempo em segundos que os objetos no bucket precisam ser retidos. Por exemplo,2678400
. Consulte Períodos de armazenamento para informações sobre como unidades de tempo diferentes são medidas em segundos.Para remover a política de retenção a partir de um bucket, use o código abaixo no arquivo JSON:
{ "retentionPolicy": null }
Use
cURL
para chamar a API JSON com uma solicitação de bucketPATCH
:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=retentionPolicy"
Em que:
JSON_FILE_NAME
é o caminho para o arquivo JSON criado na Etapa 2.BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.
API XML
A API XML não pode ser usada para definir ou remover uma política de retenção em um bucket existente. Ela só pode ser usada para incluir uma política de armazenamento com um novo bucket.
Bloquear um bucket
Para bloquear um bucket e restringir permanentemente as edições à política de retenção dele:
Console
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome do bucket em que você quer bloquear a política de armazenamento.
Selecione a guia Proteção na parte superior da página.
Na seção Política de retenção, clique no botão Bloquear.
A caixa de diálogo Bloquear política de retenção? é exibida.
Leia o aviso Permanente.
Na caixa de texto o Nome do bucket, digite o nome do seu bucket.
Clique em Política de bloqueio.
Para saber como acessar informações detalhadas de erro sobre operações do Cloud Storage com falha no console do Google Cloud, consulte Solução de problemas.
Linha de comando
Use o comando gcloud storage buckets update
com a flag --lock-retention-period
:
gcloud storage buckets update gs://BUCKET_NAME --lock-retention-period
em que BUCKET_NAME
é o nome do bucket
pertinente. Por exemplo, my-bucket
.
Se a operação for bem-sucedida, a resposta será semelhante a esta:
Updating gs://my-bucket/... Completed 1
Bibliotecas de cliente
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage C++.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
C#
Para mais informações, consulte a documentação de referência da API Cloud Storage C#.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Go
Para mais informações, consulte a documentação de referência da API Cloud Storage Go.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Node.js
Para mais informações, consulte a documentação de referência da API Cloud Storage Node.js.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
PHP
Para mais informações, consulte a documentação de referência da API Cloud Storage PHP.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Python
Para mais informações, consulte a documentação de referência da API Cloud Storage Python.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Ruby
Para mais informações, consulte a documentação de referência da API Cloud Storage Ruby.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API JSON com uma solicitação de bucketPOST
:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/lockRetentionPolicy?ifMetagenerationMatch=BUCKET_METAGENERATION_NUMBER"
Em que:
BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.BUCKET_METAGENERATION_NUMBER
é o valor de metageração do bucket. Por exemplo,8
. Encontre o valor de metageração do bucket chamando a API JSON com uma solicitação de bucketGET
.
API XML
A API XML não pode ser usada para bloquear um bucket. Use uma das outras ferramentas do Cloud Storage, como o console do Google Cloud.
Ver a política de armazenamento e o status de bloqueio de um intervalo
Para ver qual política de armazenamento está definida para um bucket, se houver, e se ela está bloqueada:
Console
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Clique no nome do bucket para ver o status dele.
Se um bucket tiver uma política de retenção, o período de armazenamento será exibido no campo Proteção do bucket. Se a política de retenção não estiver bloqueada, um ícone de bloqueio será exibido ao lado do período de armazenamento, em um estado desbloqueado. Se a política de retenção estiver bloqueada, um ícone de bloqueio será exibido ao lado do período de armazenamento, em um estado bloqueado.
Linha de comando
Use o comando gcloud storage buckets describe
com a flag --format
:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(retention_policy)"
Em que BUCKET_NAME
é o nome do bucket
da política de retenção que você quer visualizar. Por exemplo, my-bucket
.
Se tiver êxito e houver uma política de retenção no bucket, a resposta será semelhante a esta:
retention_policy: effectiveTime: '2022-10-04T18:51:22.161000+00:00' retentionPeriod: '129600'
Se tiver êxito e não houver uma política de retenção no bucket, a resposta será semelhante a esta:
null
Bibliotecas de cliente
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage C++.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
C#
Para mais informações, consulte a documentação de referência da API Cloud Storage C#.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Go
Para mais informações, consulte a documentação de referência da API Cloud Storage Go.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage Java.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Node.js
Para mais informações, consulte a documentação de referência da API Cloud Storage Node.js.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
PHP
Para mais informações, consulte a documentação de referência da API Cloud Storage PHP.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Python
Para mais informações, consulte a documentação de referência da API Cloud Storage Python.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
Ruby
Para mais informações, consulte a documentação de referência da API Cloud Storage Ruby.
Para autenticar no Cloud Storage, configure o Application Default Credentials. Para mais informações, acesse Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Ter a CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization
.Use
cURL
para chamar a API JSON com uma solicitação de bucketGET
que inclui ofields
desejado:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=retentionPolicy"
Em que
BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.Se o bucket tiver uma política de retenção definida, a resposta será semelhante à do exemplo a seguir:
{ "retentionPolicy": { "retentionPeriod": "TIME_IN_SECONDS", "effectiveTime": "DATETIME", "isLocked": "BOOLEAN" }, }
API XML
A API XML não pode ser usada para ver a política de armazenamento em um bucket. Use uma das outras ferramentas do Cloud Storage, como o console do Google Cloud.
A seguir
- Saiba mais sobre as políticas de armazenamento.
- Saiba como usar retenções de objetos.
- Saiba mais sobre o Gerenciamento do ciclo de vida de objetos, que pode excluir automaticamente os arquivos após o período de armazenamento.