Usar buckets excluídos de forma reversível

Visão geral do recurso de exclusão reversível

Nesta página, descrevemos como listar e restaurar buckets excluídos de maneira reversível.

Visão geral

Depois que um bucket é excluído de maneira reversível, ele é mantido pelo Cloud Storage até o momento da exclusão permanente e não pode ser modificado enquanto está nesse estado. O tempo de exclusão permanente é pelo menos tão longo quanto o tempo de exclusão permanente mais recente dos objetos do bucket. Depois que o tempo de exclusão permanente expirar, o Cloud Storage vai excluir o bucket permanentemente. Quando você restaura um bucket excluído de maneira reversível, ele volta a um estado ativo, e os objetos que estavam no bucket no momento da exclusão também podem ser restaurados.

Considerações

  • Para proteção contra exclusão maliciosa, um bucket excluído de forma reversível não pode ser excluído permanentemente até que ele seja retido por toda a duração da retenção da exclusão reversível.

  • Depois que um bucket é excluído de forma reversível, é necessário restaurá-lo antes de listar ou restaurar os objetos excluídos de forma reversível nele.

  • Para restaurar um bucket excluído de maneira reversível, você precisa ter o número de geração dele. Para recuperar o número de geração de um bucket excluído de maneira reversível, consulte Listar buckets excluídos de maneira reversível.

  • Um bucket excluído de maneira reversível só pode ser restaurado se não houver um bucket ativo com o mesmo nome. Se você ou outra pessoa criar um bucket com o mesmo nome de um que foi excluído de maneira reversível, não será possível restaurá-lo até que o novo seja excluído.

  • Quando você restaura um bucket excluído de maneira reversível usando a CLI gcloud ou a API JSON, os objetos no bucket não são restaurados. Para restaurar objetos excluídos de maneira reversível, é necessário realizar uma operação de restauração de objetos depois de restaurar o bucket excluído de maneira reversível.

  • As vinculações de tags podem não ser recuperadas quando você restaura um bucket excluído de forma reversível com tags. Para evitar a perda de dados, ao restaurar um bucket excluído temporariamente com associações de tags, recomendamos verificar se as associações de tags do bucket foram recuperadas. Se as vinculações de tags do bucket não forem recuperadas, será necessário vincular manualmente as tags não recuperadas ao bucket.

Permissões necessárias

Para receber as permissões necessárias para restaurar buckets excluídos de maneira reversível, peça ao administrador para conceder a você o papel do IAM de Administrador do Storage (roles/storage.admin) no projeto do Cloud Storage.

Esse papel predefinido contém as permissões necessárias para restaurar buckets excluídos de maneira reversível. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para restaurar buckets excluídos de maneira reversível:

  • storage.buckets.list
  • storage.buckets.restore
  • Restaure objetos quando usar o console Google Cloud para restaurar um bucket excluído de maneira reversível:
    • storage.objects.restore
    • storage.objects.create

Listar buckets excluídos de forma reversível

É possível realizar operações de lista para recuperar os metadados dos buckets excluídos temporariamente.

Use as instruções a seguir para listar os buckets excluídos temporariamente no seu projeto:

Console

  1. No console do Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Clique em Opções de visualização.

  3. Selecione Apenas buckets excluídos de forma reversível.

  4. Clique em Salvar.

    Uma lista de buckets excluídos de maneira reversível será exibida. Se um bucket excluído de forma reversível tiver várias gerações, cada uma delas vai aparecer em uma linha separada.

Linha de comando

Para listar os buckets excluídos de maneira reversível, use o comando gcloud storage ls:

gcloud storage ls --buckets --soft-deleted --full

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Use cURL para chamar a API JSON com uma solicitação de bucket GET:

curl -X GET \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  "https://storage.googleapis.com/storage/v1/b?softDeleted=true"

Restaurar um bucket excluído de forma reversível

Use as instruções a seguir para restaurar um bucket excluído de forma reversível.

Ao restaurar um bucket excluído de forma reversível usando o console Google Cloud , você também pode restaurar os objetos excluídos de forma reversível que estavam no bucket.

Console

  1. No console do Google Cloud , acesse a página Buckets do Cloud Storage.

    Acessar buckets

  2. Mostre os buckets excluídos de maneira reversível na lista de buckets, se eles ainda não aparecerem. Para ver as etapas, consulte Listar buckets excluídos de maneira reversível.

  3. Na linha do bucket que você quer restaurar, clique em Restaurar.

  4. Se o bucket tiver várias gerações, na guia Especificar geração do bucket, selecione a geração que você quer restaurar.

  5. Clique na guia Especificar objetos para restaurar.

  6. Na seção Especificar objetos para restaurar, selecione se você quer restaurar os objetos excluídos de maneira reversível que estavam no bucket. As seguintes opções estão disponíveis:

    • Não restaurar objetos.

      É possível restaurar os objetos excluídos de forma reversível depois, se necessário.

    • Restaurar todos os objetos.

    • Restaure objetos que correspondem aos critérios. Faça o seguinte:

      1. Selecione o período em que você quer restaurar os objetos.

      2. Opcional: para restaurar apenas os objetos que correspondem a um padrão glob, selecione Filtrar por padrão glob e insira um padrão glob.

  7. Opcional: especifique outros comportamentos de restauração na seção Outras opções.

  8. Clique em Restaurar.

    O Cloud Storage restaura o bucket excluído de maneira reversível para um estado ativo.

    Se você restaurar os objetos no bucket, o Cloud Storage criará uma operação de restauração em massa para eles. A operação ocorre de forma assíncrona e pode levar uma hora ou mais para começar. Para acompanhar o progresso da operação, clique no botão Notificações () no cabeçalho do console do Google Cloud . Ou use a CLI gcloud para acompanhar o status da operação de longa duração associada.

Linha de comando

Para restaurar um bucket excluído de forma reversível, use o comando gcloud storage restore:

  gcloud storage restore gs://BUCKET_NAME#GENERATION_NUMBER

Substitua:

  • BUCKET_NAME: o nome do bucket excluído de forma reversível que você quer restaurar.

  • GENERATION_NUMBER: o número de geração permanente e exclusivo do bucket excluído de maneira reversível que você quer restaurar. Para saber o número de geração do seu bucket, consulte Listar buckets excluídos de maneira reversível.

O Cloud Storage restaura o bucket excluído de maneira reversível para um estado ativo. A restauração do bucket não restaura os objetos que estavam nele. Para restaurar os objetos excluídos de forma reversível, consulte Restaurar um objeto excluído de maneira reversível.

APIs REST

API JSON

  1. Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho Authorization.

  2. Use cURL para chamar a API JSON com uma solicitação de bucket POST:

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/restore?generation=GENERATION_NUMBER

    Em que:

    • BUCKET_NAME é o nome do bucket que você quer restaurar. Por exemplo, my-bucket.

    • GENERATION_NUMBER é o número de geração permanente e exclusivo do bucket excluído de maneira reversível que você quer restaurar. Para saber o número de geração do seu bucket, consulte Listar buckets excluídos de maneira reversível.

    O Cloud Storage restaura o bucket excluído de maneira reversível para um estado ativo. A restauração do bucket não restaura os objetos que estavam nele. Para restaurar os objetos excluídos de forma reversível, consulte Restaurar um objeto excluído de maneira reversível.

A seguir