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 gsutil.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 adicionados ao projeto que contém o bucket.
Definir pagamentos do solicitante
Para ativar ou desativar Pagamentos do solicitante em um bucket:
Console
- No Console do Cloud, acesse a página Navegador 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 informações detalhadas sobre erros de operações com falha no navegador do Cloud Storage, consulte Solução de problemas.
gsutil
Use o comando gsutil requesterpays set
:
gsutil requesterpays set STATE gs://BUCKET_NAME
Em que:
STATE
éon
para ativar os Pagamentos do solicitante ouoff
para desativar os Pagamentos do solicitante.BUCKET_NAME
é o nome do bucket relevante. Por exemplo,my-bucket
.
Amostras de código
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage para C++.
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 para C#.
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 para Go.
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 para Java.
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 para Node.js.
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 para PHP.
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 para Python.
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 para Ruby.
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 consultarequesterpays
: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 Cloud, acesse a página Navegador 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.
gsutil
Use o comando gsutil requesterpays get
:
gsutil requesterpays get gs://BUCKET_NAME
em que BUCKET_NAME
é o nome do bucket
pertinente. Por exemplo, my-bucket
.
A resposta será similar à seguinte se o Pagamentos do solicitante estiver ativado:
gs://my-bucket: Enabled
Amostras de código
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage para C++.
C#
Para mais informações, consulte a documentação de referência da API Cloud Storage para C#.
Go
Para mais informações, consulte a documentação de referência da API Cloud Storage para Go.
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage para Java.
Node.js
Para mais informações, consulte a documentação de referência da API Cloud Storage para Node.js.
PHP
Para mais informações, consulte a documentação de referência da API Cloud Storage para PHP.
Python
Para mais informações, consulte a documentação de referência da API Cloud Storage para Python.
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 Navegador do Cloud Storage.
Na lista de buckets, clique no nome do bucket 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 informações detalhadas sobre erros de operações com falha no navegador do Cloud Storage, consulte Solução de problemas.
gsutil
Use a sinalização -u
na sua solicitação:
gsutil -u PROJECT_IDENTIFIER cp gs://BUCKET_NAME/OBJECT_NAME OBJECT_DESTINATION
Em que:
PROJECT_IDENTIFIER
é o ID ou o número do projeto a ser faturado. Por exemplo,my-project
.BUCKET_NAME
é o nome do bucket relevante. Por exemplo,my-bucket
.OBJECT_NAME
é o nome do objeto de que você quer fazer o download. Por exemplo,pets/dog.png
.OBJECT_DESTINATION
é o local em que você quer salvar seu objeto. Por exemplo,Desktop/dog.png
.
Amostras de código
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage para C++.
C#
Para mais informações, consulte a documentação de referência da API Cloud Storage para C#.
Go
Para mais informações, consulte a documentação de referência da API Cloud Storage para Go.
Java
Para mais informações, consulte a documentação de referência da API Cloud Storage para Java.
Node.js
Para mais informações, consulte a documentação de referência da API Cloud Storage para Node.js.
PHP
Para mais informações, consulte a documentação de referência da API Cloud Storage para PHP.
Python
Para mais informações, consulte a documentação de referência da API Cloud Storage para Python.
Ruby
Para mais informações, consulte a documentação de referência da API Cloud Storage para Ruby.
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.