Beschränken von domänenübergreifenden Anforderungen an einen ArcGIS-Server
In diesem Thema
- Einschränken von Anforderungen von Adobe Flash Player- und Microsoft Silverlight-Anwendungen
- Einschränkung von Anforderungen von Javascript-Anwendungen
Domänenübergreifende Anforderungen sind in ArcGIS-Server standardmäßig erlaubt, damit die Clients Adobe Flash Player, Microsoft Silverlight und Javascript die Services des Servers von jeder Domäne aus aufrufen können.
Wenn Sie Anforderungen an bestimmte Domänen für Adobe Flash Player und Microsoft Silverlight einschränken möchten, können Sie eine Reihe von Richtliniendateien für den Client-Zugriff auf der Stammverzeichnisebene Ihres Webservers ablegen und sie so bearbeiten, dass ausschließlich vertrauenswürdige Domänen aufgelistet werden. Sollten sich auf dem Webserver noch keine Richtliniendateien für den Client-Zugriff befinden, können diese problemlos als Teil der Einrichtung von ArcGIS Web Adaptor installiert werden.
Wenn Sie Anforderungen an bestimmte Domänen für Javascript-Anwendungen einschränken möchten, können Sie ArcGIS for Server so bearbeiten, dass ausschließlich vertrauenswürdige Domänen aufgelistet werden. Dies stellen Sie über das ArcGIS for Server-Administratorverzeichnis ein.
Informationen zum Einschränken von Anforderungen von Adobe Flash Player, Microsoft Silverlight und Javascript-Anwendungen können Sie den folgenden Abschnitten entnehmen.
Einschränken von Anforderungen von Adobe Flash Player- und Microsoft Silverlight-Anwendungen
Für die Plug-Ins Adobe Flash Player und Microsoft Silverlight ist der Zugriff auf Web-Services nicht erlaubt, die sich in einer anderen Domäne befinden als die Webanwendung. Dies gilt nicht, wenn der Webserver, auf den zugegriffen wird, eine Richtliniendatei für den Client-Zugriff enthält, in der die Domäne der Webanwendung als Domäne aufgeführt wird, die für domänenübergreifende Anforderungen zugelassen ist. Bei Adobe Flex lautet der Name der Richtliniendatei für den Client-Zugriff "crossdomain.xml". Wenn mit Microsoft Silverlight gearbeitet wird, ist dies in der Regel die Datei "clientaccesspolicy.xml" (obwohl Silverlight auch mit der Datei "crossdomain.xml" arbeiten kann).
Domänenübergreifende Anforderungen sind in ArcGIS-Server standardmäßig zulässig. Zu diesem Zweck wird eine Reihe von Richtliniendateien für den Client-Zugriff auf dem GIS-Server abgelegt, wenn ArcGIS for Server installiert wird. Diese sollten weder verschoben, noch geöffnet oder geändert werden.
Wenn Sie die Verwendung der Webservices durch Flex- oder Silverlight-Anwendungen verhindern möchten, die von anderen Domänen gehostet werden, sollten Sie ArcGIS Web Adaptor installieren und getrennte Richtliniendateien für den Client-Zugriff auf der Stammverzeichnisebene Ihres Webservers ablegen. Diese Dateien können beim Einrichten von Web Adaptor optional für Sie erstellt werden. Unabhängig davon, wie Sie die Dateien erhalten, können Sie sie so ändern, dass sie eine Liste mit ausschließlich vertrauenswürdigen Domänen enthalten. Dadurch minimieren Sie das Risiko, dass von einem unbekannten Flash Player- oder Silverlight-Steuerelement bösartige Befehle an Ihre Web-Services gesendet werden.
Bei der folgenden Datei handelt es sich um die von Web Adaptor installierte Datei "crossdomain.xml". Sie kann so geändert werden, dass stärkere Einschränkungen definiert werden. Weitere Informationen zum Ändern dieser Datei finden Sie unter Adobe cross-domain policy file specification (nur in englischer Sprache verfügbar).
Von Web Adaptor installierte "crossdomain.xml":
<?xml version="1.0" ?>
<cross-domain-policy>
<allow-access-from domain="*"/>
<site-control permitted-cross-domain-policies="all"/>
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
Bei der folgenden Datei handelt es sich um die von Web Adaptor installierte Datei "clientaccesspolicy.xml". Sie kann so geändert werden, dass stärkere Einschränkungen definiert werden. Informationen zum Ändern einer clientaccesspolicy.xml-Datei finden Sie unter Verfügbarmachen eines Dienstes über Domänengrenzen hinweg und Zugriffsbeschränkungen für die Netzwerksicherheit in Microsoft Silverlight.
Von Web Adaptor installierte "clientaccesspolicy.xml":
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
Vorsicht:
Ob Richtliniendateien für den Client-Zugriff vorhanden sind oder nicht, schützt Ihre Site nicht vor Site-übergreifenden Bedrohungen. Beispielsweise können Anwendungen oder Skripte, die nicht in Flash Player oder Silverlight ausgeführt werden, Ihre Services unabhängig vom Inhalt der Richtliniendateien für den Client-Zugriff direkt über REST aufrufen.
Einschränkung von Anforderungen von Javascript-Anwendungen
Standardmäßig gewährt ArcGIS for Server allen Javascript-Anwendungen den Zugriff auf Web-Services. Wenn Sie die Verwendung der Webservices durch bestimmte Javascript-Anwendungen verhindern möchten, die von anderen Domänen gehostet werden, können Sie ArcGIS for Server so konfigurieren, dass es eine Liste mit ausschließlich vertrauenswürdigen Domänen enthält. Dadurch minimieren Sie das Risiko, dass von einer unbekannten Anwendung bösartige Befehle an Ihre Web-Services gesendet werden.
- Öffnen Sie ArcGIS Server Administrator Directory, und melden Sie sich als Benutzer an, der über Administratorzugriff auf den Server verfügt. Die URL hat das Format http://gisserver.domain.com:6080/arcgis/admin.
- Klicken Sie auf system > handlers > rest > servicesdirectory.
- Klicken Sie auf der Seite Services-Verzeichnis auf Bearbeiten.
- Geben Sie im Feld AllowedOrigins eine kommagetrennte Liste von Computern und deren Domänennamen an, mit denen der Zugriff auf Ihre Web-Services möglich ist, zum Beispiel machine.esri.com, host.arcgis.com, gisserver.example.com.
Hinweis:
Die Verwendung des Platzhalterzeichens * als Ersatz für den Namen eines Computers wird nicht unterstützt. Sie müssen den vollständig qualifizierten Domänennamen des Computers in die Liste eingeben.
- Klicken Sie auf Speichern.