Visão geral Amostras de configuração
O Compartilhamento de recursos de origem cruzada (CORS, na sigla em inglês) permite interações entre recursos de diferentes origens, o que normalmente é proibido para evitar comportamentos maliciosos. Neste tópico, você saberá como definir uma configuração do CORS em um bucket do Cloud Storage e visualizar a configuração do CORS definida em um bucket. Consulte Exemplos de configuração do CORS.
Funções exigidas
Para receber as permissões necessárias para definir e ver a configuração do CORS em um bucket, peça ao administrador para conceder a você o papel de Administrador do Storage (roles/storage.admin) no bucket.
Esse papel predefinido contém as permissões necessárias para definir e ver as configurações do CORS. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
storage.buckets.getstorage.buckets.update
Também é possível conseguir essas permissões com outros papéis predefinidos ou personalizados.
Para informações sobre como conceder papéis nos buckets, consulte Definir e gerenciar políticas do IAM em buckets.
Definir a configuração do CORS em um bucket
Para configurar o CORS em um bucket, especifique as informações que identificam os tipos de solicitações que os buckets podem aceitar, como métodos HTTP e domínios de origem.
Siga estas etapas para definir uma configuração do CORS no bucket:
Console
Não é possível gerenciar o CORS usando o console do Google Cloud . Em vez disso, use a CLI gcloud.
Linha de comando
Crie um arquivo JSON com a configuração do CORS que você quer aplicar. Veja exemplos de configuração para arquivos JSON de amostra.
Use o comando
gcloud storage buckets updatecom a flag--cors-file:gcloud storage buckets update gs://BUCKET_NAME --cors-file=CORS_CONFIG_FILE
Em que:
BUCKET_NAMEé o nome do bucket pertinente. Por exemplo,my-bucket.CORS_CONFIG_FILEé o caminho para o arquivo JSON que você criou na etapa 1.
Bibliotecas de cliente
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage C++.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
C#
Saiba mais na documentação de referência C# da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
Go
Saiba mais na documentação de referência Go da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
Java
Saiba mais na documentação de referência Java da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
Node.js
Saiba mais na documentação de referência Node.js da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
PHP
Saiba mais na documentação de referência PHP da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
Python
Saiba mais na documentação de referência Python da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
Ruby
Saiba mais na documentação de referência Ruby da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
APIs REST
API JSON
Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization.Crie um arquivo JSON com a configuração do CORS que você quer aplicar. Confira exemplos de configuração para arquivos JSON de amostra.
Use
cURLpara chamar a API JSON com uma solicitação bucketPATCH:curl --request PATCH \ 'https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=cors' \ --header 'Authorization: Bearer $(gcloud auth print-access-token)' \ --header 'Content-Type: application/json' \ --data-binary @CORS_CONFIG_FILE
Em que:
BUCKET_NAMEé o nome do bucket. Por exemplo,my-bucket.CORS_CONFIG_FILEé o caminho para o arquivo JSON que você criou na etapa 2.
API XML
Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization.Crie um arquivo XML com a configuração do CORS que você quer aplicar. Confira exemplos de arquivos XML nos exemplos de configuração.
Use
cURLpara chamar a API XML com uma solicitaçãoPUT Bucketcom escopo?cors:curl -X PUT --data-binary @CORS_CONFIG_FILE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-project-id: PROJECT_ID" \ "https://storage.googleapis.com/BUCKET_NAME?cors"
Em que:
BUCKET_NAMEé o nome do bucket. Por exemplo,my-bucket.PROJECT_IDé o ID do projeto associado ao bucket. Por exemplo,my-project.CORS_CONFIG_FILEé o caminho para o arquivo XML criado na Etapa 2.
Visualizar a configuração do CORS para um bucket
Para ver a configuração do CORS para um bucket:
Console
Não é possível gerenciar o CORS usando o console do Google Cloud . Em vez disso, use a CLI gcloud.
Linha de comando
Use o comando gcloud storage buckets describe com a flag --format:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(cors_config)"
Em que BUCKET_NAME é o nome do bucket
com a configuração de CORS que você quer visualizar. Por exemplo, my-bucket.
Bibliotecas de cliente
Para ver a configuração do CORS para um bucket usando as bibliotecas de cliente, siga as instruções para exibir os metadados de um bucket e procure o campo CORS na resposta.
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage C++.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
C#
Saiba mais na documentação de referência C# da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Go
Saiba mais na documentação de referência Go da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Java
Saiba mais na documentação de referência Java da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Node.js
Saiba mais na documentação de referência Node.js da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
PHP
Saiba mais na documentação de referência PHP da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Python
Saiba mais na documentação de referência Python da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
Ruby
Saiba mais na documentação de referência Ruby da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
APIs REST
API JSON
Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization.Use
cURLpara chamar a API JSON com uma solicitação de bucketGET:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=cors"
Em que
BUCKET_NAMEé o nome do bucket com a configuração do CORS que você quer ver. Por exemplo,my-bucket.
API XML
Ter CLI gcloud instalada e inicializada, o que permite gerar um token de acesso para o cabeçalho
Authorization.Use
cURLpara chamar a API XML com uma solicitação do bucketGETcom o escopo definido como?cors:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?cors"
Em que
BUCKET_NAMEé o nome do bucket com a configuração do CORS que você quer ver. Por exemplo,my-bucket.
Remover a configuração do CORS de um bucket
Para remover as configurações de CORS de um bucket, forneça um arquivo de configuração CORS que esteja vazio.
Linha de comando
Para remover a configuração do CORS de um bucket, use o comando
gcloud storage buckets update com a
flag --clear-cors:
gcloud storage buckets update gs://BUCKET_NAME --clear-cors
Substitua BUCKET_NAME pelo nome do bucket com a configuração de CORS que você quer remover.
Bibliotecas de cliente
C++
Para mais informações, consulte a documentação de referência da API Cloud Storage C++.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
C#
Saiba mais na documentação de referência C# da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
Go
Saiba mais na documentação de referência Go da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
Java
Saiba mais na documentação de referência Java da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
Node.js
Saiba mais na documentação de referência Node.js da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
PHP
Saiba mais na documentação de referência PHP da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
Python
Saiba mais na documentação de referência Python da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
Ruby
Saiba mais na documentação de referência Ruby da API Cloud Storage.
Para se autenticar no Cloud Storage, configure o Application Default Credentials. Saiba mais em Configurar a autenticação para bibliotecas de cliente.
O exemplo a seguir remove qualquer configuração CORS de um bucket:
APIs REST
A seguir
- Confira os exemplos de configuração do CORS.
- Saiba mais sobre o CORS.
- Saiba como resolver problemas de solicitações do CORS.