CORS und Zulässige Ursprünge
Was ist CORS?
„CORS“ ist die Abkürzung für „Cross-Origin Resource Sharing“ und beschreibt ein Prinzip, nach dem ein Server festlegen kann, von welchen Ursprüngen seine Ressourcen geladen werden dürfen. Dabei handelt es sich um einen Mechanismus zur Datensicherheit, der böswilligen Zugriff auf die Serverinfrastruktur verhindern soll.
Weitere Informationen finden Sie in der MDN-Dokumentation zu CORS.
CORS in Ninox
Ab Version 3.18.11 haben wir die CORS-Header angepasst, um die gemeinsame Nutzung von Ressourcen sicherer zu machen.
Die Einstellung „Allowed Origins“
Private Clouds, auf denen Version 3.18.11 oder neuer läuft, verfügen nun über eine neue Einstellung Zulässige Ursprünge im Bereich Integrationen der Ninox-Einstellungen. Diese fungiert als Whitelist und erlaubt es den hier eingetragenen Domains, browserbasierte API-Aufrufe an ihre Endpunkte durchzuführen. Wenn hier mehrere Domains eingegeben werden müssen, können diese durch Kommata getrennt werden. Es muss das vollständige Protokoll eingegeben werden, z. B. https://mydomain.com.
Beispiele
Von extern zur Private Cloud
Eine Homepage wurde in einem Dienst wie Wix, WordPress usw. erstellt. Von dieser Seite example.storefront.com wird ein API-Call vom Browser (z. B. über JavaScript) an die Private Cloud example.ninoxdb.com gesendet, um Informationen zum Status von Bestellungen abzurufen.
- Dieser Call schlägt fehl, sofern die Domain example.storefront.com nicht in Zulässige Ursprünge im Bereich Integrationen der Private Cloud example.ninoxdb.com eingetragen wurde.
Public Cloud oder Private Cloud zu einer anderen Private Cloud
In einem Arbeitsbereich der Public Cloud (app.ninox.com) und in der Private Cloud mydomain.ninoxdb.com gibt es jeweils eine Datenbank, die ein Skript enthält, das mit http() die Private Cloud example.ninoxdb.com aufruft, um Informationen von einem ihrer Endpunkte abzurufen.
- Die Ausführung von http() schlägt fehl, sofern nicht eine der folgenden Bedingungen erfüllt ist:
- Die Domäne app.ninox.com bzw. mydomain.ninoxdb.com wurde in das Eingabefeld Zulässige Ursprünge im Bereich Integrationen der Private Cloud example.ninoxdb.com eingegeben.
- Die Ausführung von http() erfolgt in einer „do as server ... end“-Klammer, da das Skript dann vom Ninox-Server-Host und nicht vom Browser-Client ausgeführt wird.
