La fonctionnalité de partage des ressources cross-origin (CORS) régule les demandes cross-origin côté client en fournissant des déclarations de stratégie au client à la demande et en vérifiant les demandes pour assurer la conformité avec la stratégie. Cette fonctionnalité peut être configurée et activée si nécessaire.
Les stratégies incluent l'ensemble des méthodes HTTP à l'origine des demandes qui peuvent être acceptées, ainsi que les types de contenu valides. Ces stratégies varient en fonction de l'URL de demande et peuvent être reconfigurées selon vos besoins en ajoutant des entrées au fichier locked.properties.
Les points de suspension après un nom de propriété indiquent que la propriété peut accepter une liste.
Propriété | Type de valeur | Valeur maître par défaut | Autres valeurs par défaut |
---|---|---|---|
enableCORS | true false |
false | n/a |
acceptContentType... | http-content-type | application/x-www-form-urlencoded,application/xml,text/xml | flexadmin=application/x-amf admin=application/json,application/text,application/x-www-form-urlencoded portal=application/json view-vlsi-rest=application/json 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 flexadmin=true health=true misc =true portal=true rest=true saml=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 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
Note : Cette valeur est l'ID d'extension de Chrome pour
Horizon Client pour Chrome.
|
n/a |
Voici des exemples de propriétés CORS dans le fichier 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
Vérification de l'origine
La vérification de l'origine est activée par défaut. Lorsqu'elle est activée, une demande est acceptée uniquement sans origine, ou avec une origine égale à l'adresse spécifiée par l'URL externe, à l'adresse balancedHost, à n'importe quelle adresse portalHost, à n'importe quel hachage chromeExtension, à null ou à localhost. Si l'origine ne correspond à aucune de ces valeurs, l'erreur « Origine inattendue » est journalisée et l'état 404 est renvoyé.
checkReferer=true
Si plusieurs hôtes du Serveur de connexion ou serveurs de sécurité sont à équilibrage de charge, vous devez spécifier l'adresse de l'équilibrage de charge en ajoutant une entrée balancedHost au fichier locked.properties. Le port 443 est utilisé pour cette adresse.
Si les clients se connectent via un dispositif Unified Access Gateway ou une autre passerelle, vous devez spécifier toutes les adresses de passerelle en ajoutant des entrées portalHost au fichier locked.properties. Le port 443 est utilisé pour ces adresses. Vous devez également spécifier des entrées portalHost pour fournir l'accès à un hôte du Serveur de connexion ou à un serveur de sécurité par le biais d'un nom qui est différent de celui spécifié par l'URL externe.
Les clients d'extension Chrome définissent leur origine initiale sur leur propre identité. Pour que les connexions aboutissent, enregistrez l'extension en ajoutant une entrée chromeExtension au fichier locked.properties. Par exemple :
chromeExtension.1=bpifadopbphhpkkcfohecfadckmpjmjd