Nesta página, você aprenderá a alterar a classe de armazenamento de objetos de um bucket por meio da reescrita do objeto.
- Saiba como alterar as classes de armazenamento de objetos sem reescrever um objeto no recurso Gerenciamento do ciclo de vida de objetos.
- Para saber como o Cloud Storage pode gerenciar automaticamente as classes de armazenamento do objeto, consulte o recurso Classe automática.
Funções exigidas
Para ter as permissões necessárias e alterar a classe de armazenamento do
um objeto ao reescrever o objeto, peça ao administrador para conceder a você
de usuário do objeto do Storage (roles/storage.objectUser
) no bucket.
Este papel contém as permissões necessárias para alterar a classe de armazenamento de um objeto. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
Também é possível conseguir essas permissões com outros papéis predefinidos ou personalizados.
Para instruções sobre como conceder papéis nos buckets, consulte Usar o IAM com buckets.
Alterar a classe de armazenamento de um objeto
Conclua as seguintes etapas para alterar a classe de armazenamento de um objeto:
Console
As classes de armazenamento de objetos individuais não podem ser definidas no Console do Google Cloud. Em vez disso, use o Google Cloud CLI.
Linha de comando
Use o comando gcloud storage objects update
com a flag --storage-class
. Por exemplo:
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME --storage-class=STORAGE_CLASS
Em que:
BUCKET_NAME
é o nome do bucket que contém o objeto com a classe que você quer alterar. Por exemplo,my-bucket
.OBJECT_NAME
é o nome do objeto da classe que você quer alterar. Por exemplo,pets/dog.png
.STORAGE_CLASS
é a nova classe de armazenamento do objeto. Por exemplo,nearline
.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
APIs REST
API JSON
Ter a gcloud CLI instalada e inicializadapara gerar um token de acesso para o cabeçalho
Authorization
.Como alternativa, é possível criar um token de acesso usando o OAuth 2.0 Playground e incluí-lo no cabeçalho
Authorization
.Crie um arquivo JSON com as informações a seguir:
{ "storageClass": "STORAGE_CLASS" }
Em que:
STORAGE_CLASS
é a nova classe de armazenamento do objeto. Por exemplo,nearline
.
Use
cURL
(em inglês) para chamar a API JSON com uma solicitação de objetoPOST
:curl -X POST --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/o/OBJECT_NAME/rewriteTo/b/BUCKET_NAME/o/OBJECT_NAME"
Em que:
JSON_FILE_NAME
é o caminho para o arquivo JSON criado na Etapa 2.BUCKET_NAME
é o nome do bucket que contém o objeto original. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto. Por exemplo,pets/dog.png
, codificado em URL comopets%2Fdog.png
.
API XML
Ter a gcloud CLI instalada e inicializadapara gerar um token de acesso para o cabeçalho
Authorization
.Como alternativa, é possível criar um token de acesso usando o OAuth 2.0 Playground e incluí-lo no cabeçalho
Authorization
.Use
cURL
(em inglês) para chamar a API XML com uma solicitação de objetoPUT
:curl -X PUT --data-binary @OBJECT \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ -H "x-goog-storage-class: STORAGE_CLASS" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Em que:
OBJECT
é o caminho local para o objeto da classe de armazenamento que você quer alterar. É necessário fazer novamente o upload do objeto ao alterar a classe de armazenamento com a API XML. Por exemplo,Desktop/dog.png
.OBJECT_CONTENT_TYPE
é o tipo de conteúdo do objeto. Por exemplo,image/png
.STORAGE_CLASS
é a nova classe de armazenamento do objeto. Por exemplo,nearline
.BUCKET_NAME
é o nome do bucket que contém o objeto que você está reescrevendo. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto que você está reescrevendo. Por exemplo,pets/dog.png
, codificado em URL comopets%2Fdog.png
.
A seguir
- Saiba mais sobre as classes de armazenamento disponíveis.
- Altere classes de armazenamento de objetos com o Gerenciamento do ciclo de vida de objetos.
- Explore outros recursos do ciclo de vida de dados do Cloud Storage.
- Saiba mais sobre os metadados de objetos.
- Saiba como usar pré-condições de solicitação para evitar disputas.