La función para compartir recursos de distintos orígenes (CORS) regula las solicitudes de diferentes orígenes del cliente. Para ello, proporciona declaraciones de directivas al cliente a demanda y comprueba que cumplen la directiva. Esta función está habilitada de forma predeterminada.
Las directivas incluyen el conjunto de métodos HTTP que se aceptan, los posibles orígenes de las solicitudes y los tipos de contenido válidos. Estos varían en función de la URL de solicitud y se pueden reconfigurar según sea necesario. Para ello, agregue entradas a locked.properties.
Los puntos suspensivos después de un nombre de propiedad indican que esta puede aceptar una lista.
Propiedad | Tipo de valor | Principal predeterminado | Otros valores predeterminados |
---|---|---|---|
enableCORS | true false |
true | n/a |
acceptContentType... | http-content-type | application/x-www-form-urlencoded,application/xml,text/xml |
|
acceptHeader... | http-header-name | * | n/a |
exposeHeader... | http-header-name | * | n/a |
filterHeaders | true false |
true | n/a |
checkOrigin | true false |
true | n/a |
allowCredentials | true false |
false | admin=true broker=true helpdesk=true misc=true portal=true saml=true tunnel=true view-vlsi=true view-vlsi-rest=true |
allowMethod... | http-method-name | GET,HEAD,POST | misc=GET,HEAD saml=GET,HEAD |
allowPreflight | true false |
true | n/a |
maxAge | cache-time | 0 | n/a |
balancedHost | load-balancer-name | OFF | n/a |
portalHost... | gateway-name | OFF | n/a |
chromeExtension... | chrome-extension-hash | OFF | n/a |
Ejemplo de propiedades CORS del archivo locked.properties:
enableCORS = true allowPreflight = true checkOrigin = true checkOrigin-misc = false allowMethod.1 = GET allowMethod.2 = HEAD allowMethod.3 = POST allowMethod-saml.1 = GET allowMethod-saml.2 = HEAD acceptContentType.1 = application/x-www-form-urlencoded acceptContentType.2 = application/xml acceptContentType.3 = text/xml
Comprobación del origen
La comprobación del origen está habilitada de forma predeterminada. Cuando está habilitada, se aceptan solicitudes sin origen o con un origen igual a la dirección proporcionada en la URL externa, la dirección balancedHost, cualquier dirección portalHost, cualquier hash chromeExtension, null o localhost. Si el origen no es una de estas posibilidades, se registra el error "Origen inesperado" y devuelve el estado 404.
Si varios servidores de conexión o servidores de seguridad tienen la carga equilibrada, debe especificar la dirección del equilibrador de carga agregando una entrada balancedHost a locked.properties. Se supone que en esta dirección el puerto es el 443.
Si los clientes necesitan conectarse a través de Unified Access Gateway u otra puerta de enlace, debe especificar todas las direcciones de puerta de enlace. Para ello, agregue entradas portalHost a locked.properties. Se supone que en estas direcciones el puerto también es el 443. Realice la misma acción si desea proporcionar acceso a un servidor de conexión o a un servidor de seguridad con un nombre diferente del especificado en la URL externa.
Los clientes de la extensión de Chrome asignan su origen inicial a su propia identidad. Para que las conexiones se realicen correctamente, agregue una entrada chromeExtension a locked.properties para registrar la extensión.