Configuración de CORS
Esta sección describe cómo usar CORS en HTML5 para implementar el acceso entre origen.
Puede crear reglas de CORS o replicar reglas de CORS existentes desde otro bucket.
Requisitos previos
El alojamiento estático de sitios web ha sido configurado. Para obtener más información, véase Configuración del alojamiento de sitios web estáticos.
Creación de una regla de CORS
- En el panel de navegación de OBS Console, elija Object Storage.
- En la lista de bucket, haga clic en el nombre del bucket que desee. Se muestra la página Objects.
- En el panel de navegación, elija Overview.
- En el área Basic Configurations, haga clic en CORS Rules. Se muestra la página CORS Rules.
Figura 1 Descripción general > Configuraciones básicas > Reglas de CORS
Alternativamente, puede elegir Permissions > CORS Rules en el panel de navegación.
Figura 2 Permisos > Reglas de CORS
- Haga clic en Create. Aparece el cuadro de diálogo Create CORS Rule. Vea Figura 3 para más detalles.
Un bucket puede tener un máximo de 100 reglas de CORS configuradas.
- En el cuadro de diálogo CORS Rule, configure Allowed Origin, Allowed Method, Allowed Header, Exposed Header y Cache Duration (s).
Si la aceleración de CDN está habilitada para el bucket, se debe configurar el encabezado de HTTP en CDN. Para obtener más información, consulte Configuración de encabezado HTTP.
Tabla 1 Parámetros en las reglas de CORS Parámetro
Descripción
Allowed Origin
Obligatorio
Las solicitudes de este origen pueden acceder al bucket.
Se permiten varias reglas de coincidencia. Una regla ocupa una línea, y permite un carácter comodín (*) como máximo. Ejemplo:
http://rds.example.com https://*.vbs.example.com
Allowed Method
Obligatorio
Especifica el tipo de operación aceptable de buckets y objetos.
Los métodos incluyen Get, Post, Put, Delete y Head.
Allowed Header
Opcional
Especifica el encabezado permitido de las solicitudes entre orígenes.
Solo las solicitudes CORS que coincidan con el encabezado permitido son válidas.
Puede introducir varios encabezados permitidos (uno por línea) y cada línea puede contener como máximo un carácter comodín (*). No se permiten espacios ni caracteres especiales como &:<.
Exposed Header
Opcional
Especifica el encabezado expuesto en las respuestas CORS y proporciona información adicional para los clientes.
Por defecto, un navegador solo puede acceder a los encabezados Content-Length y Content-Type. Si el navegador desea acceder a otros encabezados, debe configurar esos encabezados en este parámetro.
Se pueden ingresar múltiples encabezados expuestos (uno por línea). No se permiten espacios ni caracteres especiales que incluyen *&:<.
Cache Duration (s)
Obligatorio
Especifica la duración que el navegador puede almacenar en caché las respuestas de CORS, expresada en segundos. El valor predeterminado es 100.
- Haga clic en OK.
Aparece el mensaje "The CORS rule created successfully.". La configuración de CORS entra en vigor en dos minutos.
Una vez que CORS se ha configurado correctamente, solo las direcciones especificadas en Allowed Origin pueden acceder a un bucket en OBS mediante los métodos especificados en Allowed Method. Por ejemplo, puede configurar los parámetros de CORS para bucket testbucket de la siguiente manera:
- Allowed Origin: https://www.example.com
- Allowed Method: GET
- Allowed Header: *
- Exposed Header: *
- Cache Duration (s): 100
Al hacerlo, OBS solo permite que las solicitudes GET de https://www.example.com accedan al bucket testbucket sin restricciones en los encabezados de solicitud. El cliente puede almacenar en caché las respuestas de CORS durante 100 segundos.
Replicación de reglas de CORS
- En el panel de navegación de OBS Console, elija Object Storage.
- En la lista de bucket, haga clic en el nombre del bucket que desee. Se muestra la página Objects.
- En el panel de navegación, elija Overview.
- En el área Basic Configurations, haga clic en CORS Rules. Se muestra la página CORS Rules.
Alternativamente, puede elegir Permissions > CORS Rules en el panel de navegación.
- Haga clic en Replicate.
- Seleccione un origen de replicación, es decir, el bucket de origen para el que se configuraron las reglas de CORS.
- Las reglas de CORS replicadas desde un bucket de origen no sobrescribirán las reglas existentes en el bucket de destino, y las que entren en conflicto con las existentes no se replicarán.
- La versión de los bucket de origen y destino debe ser 3.0.
- Puede quitar las reglas que no desea replicar.
- Puede haber 100 reglas de CORS como máximo en un bucket. Si el número de reglas que replicará más el número de reglas existentes en el bucket de destino supera las 100, la replicación fallará. Antes de replicar las reglas, elimine algunas si es necesario.
Figura 4 Replicación de reglas de CORS
- Haga clic en OK para replicar las reglas de CORS en el bucket de destino.