Información general Ejemplos de configuración
El uso compartido de recursos entre dominios (CORS) permite las interacciones entre recursos de diferentes orígenes, algo que normalmente está prohibido para evitar comportamientos maliciosos. En esta página se explica cómo definir una configuración de CORS en un segmento de Cloud Storage y cómo ver la configuración de CORS definida en un segmento. Consulta Ejemplos de configuración de CORS para ver ejemplos de configuraciones de CORS, incluida la configuración que inhabilita cualquier configuración de tu segmento.
Roles obligatorios
Para obtener los permisos que necesitas para definir y ver la configuración de CORS de un segmento, pide a tu administrador que te conceda el rol Administrador de Storage (roles/storage.admin
) en el segmento.
Este rol predefinido contiene los permisos necesarios para definir y ver configuraciones de CORS. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
storage.buckets.get
storage.buckets.update
También puedes obtener estos permisos con otros roles predefinidos o roles personalizados.
Para obtener información sobre cómo conceder roles en los contenedores, consulta Usar IAM con contenedores.
Definir la configuración de CORS en un segmento
Para configurar CORS en un segmento, debe especificar información, como los métodos HTTP y los dominios de origen, que identifique los tipos de solicitudes que puede aceptar el segmento.
Sigue estos pasos para definir una configuración de CORS en tu segmento:
Consola
No puedes gestionar CORS con la Google Cloud consola. Usa la CLI de gcloud.
Línea de comandos
Crea un archivo JSON con la configuración de CORS que quieras aplicar. Consulta ejemplos de configuración para ver archivos JSON de muestra.
Usa el comando
gcloud storage buckets update
con la marca--cors-file
:gcloud storage buckets update gs://BUCKET_NAME --cors-file=CORS_CONFIG_FILE
Donde:
BUCKET_NAME
es el nombre del segmento correspondiente. Por ejemplo,my-bucket
.CORS_CONFIG_FILE
es la ruta al archivo JSON que has creado en el paso 1.
Bibliotecas de cliente
C++
Para obtener más información, consulta la documentación de referencia de la API C++ de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
C#
Para obtener más información, consulta la documentación de referencia de la API C# de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
Go
Para obtener más información, consulta la documentación de referencia de la API Go de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
Node.js
Para obtener más información, consulta la documentación de referencia de la API Node.js de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
PHP
Para obtener más información, consulta la documentación de referencia de la API PHP de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
Python
Para obtener más información, consulta la documentación de referencia de la API Python de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
Ruby
Para obtener más información, consulta la documentación de referencia de la API Ruby de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
En el siguiente ejemplo se define una configuración de CORS en un segmento:
APIs REST
API JSON
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Crea un archivo JSON con la configuración de CORS que quieras aplicar. Consulta ejemplos de configuración para ver archivos JSON de muestra.
Usa
cURL
para llamar a la API JSON con una solicitud dePATCH
contenedor: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
Donde:
BUCKET_NAME
es el nombre del segmento. Por ejemplo,my-bucket
.CORS_CONFIG_FILE
es la ruta al archivo JSON que has creado en el paso 2.
API XML
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Crea un archivo XML con la configuración de CORS que quieras aplicar. Consulta ejemplos de configuración para ver archivos XML de muestra.
Usa
cURL
para llamar a la API XML con una solicitudPUT Bucket
con el ámbito?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"
Donde:
BUCKET_NAME
es el nombre del segmento. Por ejemplo,my-bucket
.PROJECT_ID
es el ID del proyecto asociado al contenedor. Por ejemplo,my-project
.CORS_CONFIG_FILE
es la ruta al archivo XML que ha creado en el paso 2.
Para quitar la configuración de CORS de un segmento, define una configuración de CORS vacía.
Ver la configuración de CORS de un segmento
Para ver la configuración de CORS de un segmento, sigue estos pasos:
Consola
No puedes gestionar CORS con la Google Cloud consola. Usa la CLI de gcloud.
Línea de comandos
Usa el comando gcloud storage buckets describe
con la marca --format
:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(cors_config)"
Donde BUCKET_NAME
es el nombre del contenedor cuya configuración de CORS quieres ver. Por ejemplo, my-bucket
.
Bibliotecas de cliente
Para ver la configuración de CORS de un segmento mediante las bibliotecas de cliente, sigue las instrucciones para mostrar los metadatos de un segmento y busca el campo CORS en la respuesta:
C++
Para obtener más información, consulta la documentación de referencia de la API C++ de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
C#
Para obtener más información, consulta la documentación de referencia de la API C# de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Go
Para obtener más información, consulta la documentación de referencia de la API Go de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Node.js
Para obtener más información, consulta la documentación de referencia de la API Node.js de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
PHP
Para obtener más información, consulta la documentación de referencia de la API PHP de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Python
Para obtener más información, consulta la documentación de referencia de la API Python de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Ruby
Para obtener más información, consulta la documentación de referencia de la API Ruby de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
APIs REST
API JSON
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Usa
cURL
para llamar a la API JSON con una solicitud deGET
contenedor:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=cors"
Donde
BUCKET_NAME
es el nombre del contenedor cuya configuración de CORS quieres ver. Por ejemplo,my-bucket
.
API XML
Tener instalada e inicializadala CLI de gcloud, que te permite generar un token de acceso para el encabezado
Authorization
.Usa
cURL
para llamar a la API XML con una solicitud deGET
contenedor con el ámbito?cors
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?cors"
Donde
BUCKET_NAME
es el nombre del contenedor cuya configuración de CORS quieres ver. Por ejemplo,my-bucket
.
Siguientes pasos
- Consulta ejemplos de configuración de CORS, incluido un ejemplo que elimina la configuración de CORS de un segmento.
- CORS
- Consulta cómo solucionar problemas con las solicitudes CORS.