Nesta página descrevemos como configurar o recurso pagamentos do solicitante e fornecemos um exemplo de como fazer a solicitação em um bucket em que o recurso está ativado.
Configurar pagamentos do solicitante
Nas seções seguintes mostramos como ativar e desativar Pagamentos do solicitante e como verificar se o recurso está ativado em um bucket.
Pré-requisitos
Você precisa ter a permissão
storage.buckets.get
, que permite receber o status de pagamento do solicitante para um bucket e também é necessário para ativar e desativar o Pagamentos do solicitante com o Console do Google Cloud ou a CLI do Google Cloud.Ao ativar ou desativar Pagamentos do solicitante, você precisa ter a permissão
storage.buckets.update
.Ao desativar os Pagamentos do solicitante, você precisa incluir um projeto de faturamento em sua solicitação ou ter a permissão
resourcemanager.projects.createBillingAssignment
. Consulte os Requisitos de uso e acesso do Pagamentos do solicitante para saber mais.
As permissões são concedidas aos usuários por meio de papéis. Por exemplo, os usuários que receberam o papel Administrador do Storage possuem todas as permissões storage.buckets
acima. Os papéis podem ser concedidos no projeto que contém o bucket.
Definir pagamentos do solicitante
Para ativar ou desativar Pagamentos do solicitante em um bucket:
Console
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de intervalos, encontre aquele que você quer definir e localize a coluna Pagamentos do solicitante.
O valor na coluna indica o estado atual dos pagamentos do solicitante para esse bucket.
Clique no estado atual de Pagamentos do solicitante para o bucket desejado.
Na janela exibida, clique em Ativar ou Desativar, dependendo do estado que você quer definir para Pagamentos do solicitante.
Quando ativado, um balão verde e On aparecem na coluna pagamentos do solicitante do bucket. Quando desativado, um balão cinza e Off aparecem na coluna.
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
é--requester-pays
para ativar os Pagamentos do solicitante ou "--no-requester-pays" para desativá-lo.
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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em 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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em 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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em 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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em 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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em 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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em 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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em 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, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
O exemplo a seguir ativa o Pagamentos do solicitante em um bucket:
O exemplo a seguir desativa os pagamentos do solicitante em um bucket:
APIs REST
API JSON
- Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth. Para ver instruções, consulte Autenticação de APIs.
Crie um arquivo JSON com as informações a seguir:
{ "billing": { "requesterPays": STATE } }
Em que STATE é
true
oufalse
.Use
cURL
para chamar a API JSON com uma solicitação bucketPATCH
:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=billing"
Em que:
JSON_FILE_NAME
é o caminho para o arquivo JSON criado na Etapa 2.OAUTH2_TOKEN
é o nome do token de acesso gerado na Etapa 1.BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.
API XML
- Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth. Para ver instruções, consulte Autenticação de APIs.
Crie um arquivo XML que contenha as seguintes informações:
<BillingConfiguration> <RequesterPays>STATE</RequesterPays> </BillingConfiguration>
Em que STATE é
Enabled
ouDisabled
.Use
cURL
para chamar a API XML com uma solicitação de bucketPUT
e um parâmetro de string de consultabilling
:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/BUCKET_NAME?billing"
Em que:
XML_FILE_NAME
é o caminho para o arquivo XML criado na Etapa 2.OAUTH2_TOKEN
é o nome do token de acesso gerado na Etapa 1.BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.
Verificar se os pagamentos do solicitante estão ativados
Para verificar se Pagamentos do solicitante está ativado em um bucket:
Console
- No Console do Google Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, o status do Pagamentos do solicitante de cada bucket é encontrado na coluna Pagamentos do solicitante.
Se ativado, o status é verde e exibe a palavra On.
Linha de comando
Use o comando gcloud storage buckets describe
com a flag --format
:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(requester_pays)"
Em que BUCKET_NAME
é o nome do bucket
com o status que você quer visualizar. Por exemplo, my-bucket
.
Se a operação for bem-sucedida, a resposta será semelhante a esta:
requester_pays: true
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.
APIs REST
API JSON
- Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth. Para ver instruções, consulte Autenticação de APIs.
Use
cURL
para chamar a API JSON com uma solicitação bucketGET
:curl -X GET \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=billing"
Em que:
OAUTH2_TOKEN
é o nome do token de acesso que você gerou na etapa 1.BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.
API XML
- Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth. Para ver instruções, consulte Autenticação de APIs.
Use
cURL
para chamar a API XML com uma solicitação de bucketGET
e um parâmetro de string de consultabilling
:curl -X GET \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/BUCKET_NAME?billing"
Em que:
OAUTH2_TOKEN
é o nome do token de acesso que você gerou na etapa 1.BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.
Acessar buckets dos pagamentos do solicitante
No exemplo a seguir você aprende como incluir um projeto de faturamento para fazer o download de um objeto armazenado em um bucket de Pagamentos do solicitante. Use um procedimento semelhante para executar outras solicitações no bucket de Pagamentos do solicitante ou nos objetos que estão nele. Para conhecer os pré-requisitos, consulte os requisitos de acesso do Pagamentos do solicitante.
Console
- No Console do Cloud, acesse a página Buckets do Cloud Storage.
Na lista de buckets, clique no nome daquele que contém o objeto que você quer fazer o download.
Na janela exibida, use o menu suspenso para selecionar um projeto para faturamento.
Marque a caixa de seleção para confirmar que você está autorizado a usar o projeto selecionado para fins de faturamento.
Clique em Salvar.
Faça o download do objeto como você faria normalmente.
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 a sinalização --billing-project
na sua solicitação:
gcloud storage cp gs://BUCKET_NAME/OBJECT_NAME SAVE_TO_LOCATION --billing-project=PROJECT_IDENTIFIER
Em que:
BUCKET_NAME
é o nome do bucket que contém o objeto que você está fazendo o download. Por exemplo,my-bucket
.OBJECT_NAME
é o nome do objeto do qual você está fazendo o download. Por exemplo,pets/dog.png
.SAVE_TO_LOCATION
é o caminho local onde você está salvando o objeto. Por exemplo,Desktop/Images
.PROJECT_IDENTIFIER
é o ID ou o número do projeto a ser faturado. Por exemplo,my-project
.
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
- Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth. Para ver instruções, consulte Autenticação de APIs.
Na solicitação, inclua o parâmetro de string de consulta de
userProject
definido para a ID do projeto a ser cobrada:curl -X GET \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media&userProject=PROJECT_IDENTIFIER"
Em que:
OAUTH2_TOKEN
é o token de acesso gerado na etapa 1.SAVE_TO_LOCATION
é o local em que você quer salvar seu objeto. Por exemplo,Desktop/dog.png
.BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto que você quer fazer o download. Por exemplo,pets/dog.png
, codificado por URL comopets%2Fdog.png
.PROJECT_IDENTIFIER
é o ID ou o número do projeto a ser faturado. Por exemplo,my-project
.
API XML
- Receba um token de acesso de autorização do OAuth 2.0 Playground. Configure o Playground para usar suas credenciais do OAuth. Para ver instruções, consulte Autenticação de APIs.
Na solicitação, inclua o cabeçalho
x-goog-user-project
definido para a ID do projeto a ser cobrada:curl -X GET \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "x-goog-user-project: PROJECT_ID" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Em que:
OAUTH2_TOKEN
é o token de acesso gerado na etapa 1.PROJECT_ID
é o ID do projeto a ser cobrado. Por exemplo,my-project
.SAVE_TO_LOCATION
é o local em que você quer salvar seu objeto. Por exemplo,Desktop/dog.png
.BUCKET_NAME
é o nome do bucket pertinente. Por exemplo,my-bucket
.OBJECT_NAME
é o nome codificado por URL do objeto que você quer fazer o download. Por exemplo,pets/dog.png
, codificado por URL comopets%2Fdog.png
.
A seguir
- Saiba mais sobre os pagamentos do solicitante.
- Disponibilizar dados publicamente.