O recurso Cross-Origin Resource Sharing (CORS) regula as solicitações entre origens do lado do cliente fornecendo instruções de política ao cliente sob demanda e verificando as solicitações de conformidade com a política. Esse recurso pode ser configurado e ativado, se necessário.
As políticas incluem o conjunto de métodos HTTP que podem ser aceitos, onde as solicitações podem ser originadas e quais tipos de conteúdo são válidos. Essas políticas variam de acordo com a URL da solicitação e podem ser reconfiguradas conforme necessário adicionando entradas ao arquivo locked.properties.
Uma reticência após o nome de uma propriedade indica que a propriedade pode aceitar uma lista.
Propriedade | Tipo de valor | Padrão mestre | Outros padrões |
---|---|---|---|
enableCORS | true false |
true | n/a |
acceptContentType... | http-content-type | application/x-www-form-urlencoded,application/xml,text/xml | admin=application/json,application/text,application/x-www-form-urlencoded portal=application/json rest=application/json sse=application/json view-vlsi-rest=application/json |
acceptHeader... | http-header-name | * | admin=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Cache-Control,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrftoken,DNT,Host,Origin,Referer, User-Agent broker=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,Gateway-Location,Gateway-Name,Gateway-Type,Host, Origin,Referer,User-Agent,X-CSRF-Token,X-EUC-Gateway,X-EUC-Health,X-Forwarded-For,X-Forwarded-Host,X-Forwarded-Proto portal=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,Host,Origin,Referer,User-Agent,X-CSRF- Token rest=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrfToken,Host,Origin,Referer,User-Agent,X- Require-Cloud-Admin-Privilege view-vlsi=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrfToken,Host,Origin,Referer,User-Agent,X- Require-Cloud-Admin-Privilege view-vlsi-rest=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrfToken,Host,Origin,Referer,User-Agent,X- Require-Cloud-Admin-Privilege |
exposeHeader... | http-header-name | * | n/a |
filterHeaders | true false |
true | n/a |
checkOrigin | true false |
true | n/a |
checkReferer | true false |
false | n/a |
allowCredentials | true false |
false | admin =true broker=true health=true misc =true portal=true rest=true saml=true sse=true tunnel=true view-vlsi=true view-vlsi-rest=true |
allowMethod... | http-method-name | GET,HEAD,POST | health=GET,HEAD misc =GET,HEAD rest=GET,POST,PUT, PATCH,DELETE saml =GET,HEAD sse=GET,POST tunnel=GET,POST |
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 | ppkfnjlimknmjoaemnpidmdlfchhehel
Observação: Esse valor é o ID da extensão do Chrome para
Horizon Client para Chrome.
|
n/a |
A seguir estão exemplos de propriedades CORS no arquivo 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
Verificação de origem
A verificação de origem é ativada por padrão. Quando ativado, uma solicitação é aceita somente sem uma Origem, ou com uma Origem igual ao endereço que a URL externa especifica, para o endereço balancedHost, para qualquer endereço portalHost, para qualquer hash chromeExtension, para null, ou para localhost. Se Origem não for uma dessas possibilidades, um erro "Origem Inesperada" será registrado e um status de 404 será retornado.
checkReferer=true
Se vários hosts do Servidor de Conexão tiverem balanceamento de carga, você deverá especificar o endereço do balanceador de carga adicionando uma entrada balancedHost ao arquivo locked.properties. A porta 443 é assumida para esse endereço.
Se os clientes se conectarem por meio de um appliance do Unified Access Gateway ou outro gateway, você deverá especificar todos os endereços de gateway adicionando entradas portalHost ao arquivo locked.properties. A porta 443 é assumida para esses endereços. Você também deve especificar entradas portalHost para fornecer acesso a um host do Servidor de Conexão por um nome diferente do nome especificado pela URL Externa.
Os clientes de extensão do Chrome definem sua Origem inicial como sua própria identidade. Para permitir que as conexões sejam bem-sucedidas, registre a extensão adicionando uma entrada chromeExtension ao arquivo locked.properties. Por exemplo:
chromeExtension.1=bpifadopbphhpkkcfohecfadckmpjmjd