Die CORS-Funktion (Cross-Origin Resource Sharing, Ressourcenfreigabe zwischen verschiedenen Ursprüngen) steuert die clientseitigen Anforderungen verschiedener Herkunft durch Bereitstellen von Richtlinienanweisungen für den Client nach Bedarf und Überprüfen der Anforderungen auf Einhaltung der Richtlinie. Diese Funktion kann konfiguriert und bei Bedarf aktiviert werden.
Zu den Richtlinien gehört der Satz zulässiger HTTP-Methoden sowie die Festlegung, woher Anforderungen stammen können und welche Arten von Inhalten gültig sind. Diese Richtlinien variieren je nach Anforderungs-URL und können durch Hinzufügen von Einträgen zur Datei locked.properties nach Bedarf neu konfiguriert werden.
Ein Auslassungszeichen nach einem Eigenschaftsnamen weist darauf hin, dass für die Eigenschaft eine Liste verwendet werden kann.
Eigenschaft | Werttyp | Master-Standardeinstellung | Sonstige Standardeinstellungen |
---|---|---|---|
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
Hinweis: Dieser Wert ist die Chrome-Erweiterungs-ID für
Horizon Client für Chrome.
|
n/a |
Nachfolgend finden Sie Beispiele für CORS-Eigenschaften in der Datei 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
Überprüfen der Herkunft
Das Überprüfen des Ursprungs, also der Herkunft, ist standardmäßig aktiviert. Wenn diese Funktion aktiviert ist, wird eine Anforderung nur ohne Ursprung akzeptiert oder wenn sie von der Adresse in der externen URL, der Adresse balancedHost, einer beliebigen portalHost-Adresse, einem beliebigen chromeExtension -Hash, von null oder localhost stammt. Bei einem anderen Ursprung wird der Fehler „Unerwartete Herkunft“ protokolliert und der Status „404“ zurückgegeben.
checkReferer=true
Wenn die Lasten mehrerer Verbindungsserver-Hosts oder Sicherheitsserver ausgeglichen sind, müssen Sie die Adresse des Lastausgleichsdienstes angeben, indem Sie der Datei locked.properties einen balancedHost-Eintrag hinzufügen. Port 443 wird für diese Adresse vorausgesetzt.
Wenn die Clients die Verbindung über eine Unified Access Gateway-Appliance oder ein anderes Gateway herstellen, müssen Sie alle Gateway-Adressen durch Hinzufügen von portalHost-Einträgen zur Datei locked.properties angeben. Port 443 wird für diese Adressen vorausgesetzt. Sie müssen außerdem portalHost-Einträge angeben, um den Zugriff auf einen Verbindungsserver-Host oder einen Sicherheitsserver zu gewähren. Der Name muss sich dabei von dem von der externen URL angegebenen Namen unterscheiden.
Chrome-Erweiterung-Clients legen ihren ersten Ursprung mit ihrer eigenen Identität fest. Damit Verbindungen erfolgreich hergestellt werden können, muss die Erweiterung durch Hinzufügen eines chromeExtension-Eintrags zur Datei locked.properties registriert werden. Beispiel:
chromeExtension.1=bpifadopbphhpkkcfohecfadckmpjmjd