Visão geral Amostras de configuração
O compartilhamento de recursos entre origens (CORS, na sigla em inglês) permite interações entre recursos de origens diferentes, 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
- No console do Google Cloud , acesse a página Buckets do Cloud Storage.
Clique no nome do bucket.
Clique na guia Configuração.
Na seção Compartilhamento de recursos entre origens, clique em Editar configuração do CORS.
Marque a caixa de seleção Permitir compartilhamento de recursos entre origens.
Clique em Adicionar uma configuração e faça o seguinte:
Forneça valores para os campos na configuração:
Lista de origens permitidas: as origens que você quer permitir para compartilhamento de recursos entre origens com esse bucket.
Especificar métodos: os métodos HTTP que você quer permitir para o compartilhamento de recursos entre origens com esse bucket.
Lista de cabeçalhos de resposta permitidos: os cabeçalhos de resposta que você quer permitir para compartilhamento de recursos entre origens com esse bucket.
Tempo de expiração do cache: o número de segundos que o navegador tem permissão para fazer solicitações antes de repetir a solicitação de simulação.
Para mais informações sobre cada campo, consulte Componentes de uma configuração do CORS.
Clique em Concluído.
Opcional: para adicionar outras configurações, repita a etapa anterior.
Clique em Salvar.
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:
Rust
Veja no exemplo a seguir como definir uma configuração CORS em um bucket:
APIs REST
API JSON
Ter a 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 a 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
Console
- No console do Google Cloud , acesse a página Buckets do Cloud Storage.
Clique no nome do bucket.
Clique na guia Configuração.
Na seção Compartilhamento de recursos entre origens, clique em Editar configuração do CORS.
Clique na configuração.
Opcional: edite a configuração ou clique em Cancelar para fechar a caixa de diálogo.
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.
Rust
APIs REST
API JSON
Ter a 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 a 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
Console
- No console do Google Cloud , acesse a página Buckets do Cloud Storage.
Clique no nome do bucket.
Clique na guia Configuração.
Na seção Compartilhamento de recursos entre origens, clique em Editar configuração do CORS.
Faça uma das seguintes ações:
Para excluir uma configuração específica do CORS, clique em Excluir na configuração que você quer remover.
Para desativar o CORS e excluir todas as configurações do CORS do bucket, desmarque a caixa de seleção Permitir compartilhamento de recursos entre origens.
Clique em Salvar.
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:
Rust
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.