Nesta página, explicamos os diferentes endpoints de solicitação que podem ser usados para acessar o Cloud Storage. O Cloud Storage é compatível com os protocolos HTTP/1.1, HTTP/2 e HTTP/3. Um endpoint é o local em que o Cloud Storage pode ser acessado, escrito como um URL.
Solicitações comuns de API
API JSON
Ao fazer solicitações de API em JSON diretamente para o Cloud Storage, use os seguintes endpoints:
Para solicitações de API JSON gerais, exceto uploads de objetos, use o seguinte endpoint, substituindo
PATH_TO_RESOURCE
pelo valor adequado:https://storage.googleapis.com/storage/v1/PATH_TO_RESOURCE
Use o endpoint a seguir para uploads de objeto da API JSON, substituindo
BUCKET_NAME
pelo valor adequado:https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o
Use o seguinte endpoint para solicitações em lote, substituindo
PATH_TO_RESOURCE
pelo valor adequado:https://storage.googleapis.com/batch/storage/v1/PATH_TO_RESOURCE
Como opção, é possível usar o seguinte endpoint para downloads de objetos da API JSON, substituindo
BUCKET_NAME
eOBJECT_NAME
pelos valores apropriados:https://storage.googleapis.com/download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media
Os endpoints da API JSON só aceitam solicitações HTTPS.
API XML
Ao fazersolicitações da API XML diretamente para o Cloud Storage,
use o endpoint com estilo virtual hospedado ou estilo de caminho, substituindo
BUCKET_NAME
e OBJECT_NAME
pelos valores apropriados:
Endpoint com estilo de hospedagem virtual:
https://BUCKET_NAME.storage.googleapis.com/OBJECT_NAME
Endpoint no estilo de caminho:
https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME
Os endpoints da API XML são compatíveis com a criptografia secure sockets layer (SSL), isso significa que você pode usar HTTP ou HTTPS. Recomendamos o uso de HTTPS, especialmente se você faz autenticação no Cloud Storage usando o OAuth 2.0.
Para conexões por proxy, consulte o tópico Solução de problemas para conhecer as práticas recomendadas.
Como codificar partes do caminho do URL
Além de seguir as considerações gerais de nomeação de buckets e de objetos, é necessário codificar os seguintes caracteres quando aparecerem no nome do objeto ou na string de consulta de um URI de solicitação para garantir a compatibilidade entre as ferramentas do Cloud Storage:
!
, #
, $
, &
, '
, (
, )
, *
, +
, ,
, /
, :
, ;
, =
, ?
,
@
, [
, ]
e caracteres de espaço.
Por exemplo, se você enviar uma solicitação GET
à API JSON referente ao objeto denominado foo??bar
no bucket example-bucket
, seu URL de solicitação deverá ser:
GET https://storage.googleapis.com/storage/v1/b/example-bucket/o/foo%3f%3fbar
Nem todos os caracteres listados precisam ser codificados em todos os cenários. Além disso, a codificação é normalmente gerenciada para você pelas bibliotecas de cliente, como as bibliotecas de cliente do Cloud Storage. Portanto, é possível transmitir o nome bruto do objeto ao usar essas ferramentas.
Para mais informações sobre como usar a codificação por porcentagem, consulte a Seção 3.3 Caminho na RFC 3986.
Endpoints do console do Google Cloud
Ao usar o console do GoogleCloud, você acessa recursos diferentes usando os seguintes URLs:
Recurso | URL |
---|---|
Lista de buckets de um projeto | https://console.cloud.google.com/storage/browser?project=PROJECT_ID |
Lista de objetos de um bucket | https://console.cloud.google.com/storage/browser/BUCKET_NAME |
Detalhes de um objeto | https://console.cloud.google.com/storage/browser/_details/BUCKET_NAME/OBJECT_NAME |
Dados de um objeto | Consulte Downloads em navegadores autenticados. |
gcloud endpoints
Os comandos gcloud storage
usam endpoints da API JSON. O uso de endpoints é
gerenciado em seu nome pela CLI gcloud.
Endpoints de biblioteca de cliente
As bibliotecas de cliente do Cloud Storage gerenciam os endpoints de solicitação automaticamente. Também é possível definir o endpoint da solicitação manualmente. Isso pode ser útil quando você quer usar um endpoint específico, ou para testes, por exemplo, quando você quer usar um emulador 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, 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.
Domínios personalizados
Se você tiver um domínio próprio, mapeie os URIs para um ou mais
serviços do Google Cloud, incluindo os buckets do Cloud Storage. Às vezes, o termo
nome do host vinculado ao bucket é usado para descrever esse
endpoint de solicitação do Cloud Storage. Para conectar um domínio personalizado a um
bucket do Cloud Storage, crie um redirecionamento A
ou CNAME
no
seu registro DNS.
A
registros
Ao conectar um domínio personalizado a um bucket do Cloud Storage,
geralmente é necessário usar um registro A
.
- Os registros
A
são compatíveis com solicitaçõesHTTPS
. - Registros
A
podem ser usados para enviar tráfego proveniente de um único nome de host para vários buckets, bem como para outros serviços do Google Cloud. - Os registros
A
não impõem restrições ao nome do seu bucket.
A desvantagem de usar registros A
é que eles exigem configuração e uso adicionais
de recursos adicionais do Google Cloud. Consulte
Como configurar o balanceador de carga e o certificado SSL para um guia sobre como usar
domínios personalizados com registros A
.
CNAME
registros
Ao conectar um domínio personalizado a um bucket do Cloud Storage, é possível
usar um registro CNAME
, mas isso tem algumas limitações:
- Os registros
CNAME
são compatíveis apenas com solicitaçõesHTTP
. - Os registros
CNAME
só podem direcionar o tráfego de um determinado nome do host para um único bucket. - Os registros
CNAME
exigem o nome do host e o nome do bucket associado para corresponder e é necessário validar o nome do bucket. - Registros
CNAME
só podem ser usados para subdomínios, comowww.mydomain.com
, não domínios de nível superior, comomydomain.com
.
Ao usar registros CNAME
, a parte do nome do host de registro CNAME
precisa
ser definida da seguinte maneira:
c.storage.googleapis.com.
Por exemplo, se o domínio for example.com
e você quiser disponibilizar mapas de viagem para seus clientes: Crie um bucket no Cloud Storage
denominado travel-maps.example.com
e depois crie um registro CNAME
no DNS que
redirecione as solicitações de travel-maps.example.com
para o URI do Cloud Storage. Para fazer isso, publique o seguinte registro CNAME
no DNS:
NAME TYPE DATA travel-maps CNAME c.storage.googleapis.com.
Com isso, seus clientes podem usar este URL para acessar um mapa de Paris:
http://travel-maps.example.com/paris.jpg
O serviço de registro de domínio precisa ter como administrar seu domínio, incluindo adicionar um registro de recurso CNAME
. Por exemplo, se você usa o Cloud DNS, as instruções para adicionar registros de recurso podem ser encontradas na página Adicionar, modificar e excluir registros.
Downloads em navegadores autenticados
Os downloads por navegador autenticado usam autenticação baseada em cookies. A autenticação baseada em cookies solicita que os usuários façam login nas respectivas contas do usuário para definir a identidade. A conta especificada precisa ter a permissão apropriada para
Baixar o objeto. Por exemplo, se você estiver usando o Gerenciamento de identidade e acesso para controlar o
acesso aos objetos, a conta do usuário deverá ter a
permissão storage.objects.viewer
, que é
concedida no papel de Visualizador de objetos no Storage.
Para fazer o download de um objeto usando a autenticação baseada em cookies, use o seguinte URL,
substituindo BUCKET_NAME
e
OBJECT_NAME
pelos valores adequados:
https://storage.cloud.google.com/BUCKET_NAME/OBJECT_NAME
Por exemplo, se você compartilhou uma imagem london.jpg
do bucket
example-maps
, o URL será:
https://storage.cloud.google.com/example-maps/london.jpg
Após fazer login, você será redirecionado para o conteúdo solicitado. O URL desse conteúdo começa com uma sequência alfanumérica e contém a string /download/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME
O uso de HTTPS é necessário ao realizar downloads do navegador autenticado, as tentativas de usar o HTTP fazem o redirecionamento para HTTPS.
Acesso a objetos públicos
Todas as solicitações para o URI storage.cloud.google.com
exigem autenticação. Isso se aplica até mesmo quando allUsers
tem permissão para acessar um objeto. Se você quiser
que os usuários façam o download de objetos acessados de maneira anônima sem autenticação, use o
endpoint em estilo de caminho da API XML:
https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME
Para detalhes e exemplos, consulte Como acessar dados públicos.
Suporte a TLS mútuo
O TLS mútuo (mTLS) é um protocolo padrão do setor para autenticação mútua entre um cliente e um servidor. O Cloud Storage oferece suporte a estes endpoints mTLS:Solicitações da API JSON:
storage.mtls.googleapis.com
Downloads em navegadores autenticados:
storage.mtls.cloud.google.com
A seguir
- Faça o upload de um arquivo para o Cloud Storage.
- Faça o download de um arquivo do Cloud Storage.
- Hospede um site estático.
- Conheça as opções para controlar o acesso aos seus dados.