Skip To Content

Überprüfen des ArcGIS-Servers auf der Basis von Best Practices für mehr Sicherheit

ArcGIS-Server verfügt über ein Python-Skriptwerkzeug, serverScan.py, das nach einigen allgemeinen Sicherheitsproblemen sucht. Das Werkzeug überprüft basierend auf einigen bewährten Methoden zum Konfigurieren einer sicheren ArcGIS-Server-Umgebung. Es analysiert zwölf Kriterien oder Konfigurationseigenschaften und unterteilt sie in drei Schweregrade: Critical, Important und Recommended. Diese Kriterien lassen sich wie folgt beschreiben:

IDSchweregradEigenschaftBeschreibung

SS01

Critical

Web-Kommunikation

Stellt fest, ob HTTPS für ArcGIS-Server aktiviert ist. Um zu verhindern, dass Kommunikation abgefangen wird, empfiehlt es sich, ArcGIS Server und ArcGIS Web Adaptor (sofern installiert) so zu konfigurieren, dass die SSL-Verschlüsselung erzwungen wird.

SS02

Critical

Standardisierte Abfragen

Stellt fest, ob standardisierte Abfragen erzwungen werden. Um Schutz vor der Einschleusung von SQL-Befehlen zu bieten, muss diese Option unbedingt aktiviert werden.

SS03

Critical

Token-Anforderungen

Stellt fest, ob Anforderungen zur Tokenerstellung über GET unterstützt werden. Bei der Erstellung von Tokens über GET werden die Anmeldedaten des Benutzers als Teil der URL übermittelt und können im Browser-Verlauf oder in Netzwerkkomponenten erfasst und offengelegt werden. Diese Einstellung sollte deaktiviert werden, sofern sie nicht für andere Anwendungen erforderlich ist.

SS04

Critical

Token-Anforderungen

Stellt fest, ob Anforderungen zur Tokenerstellung über POST mit Anmeldedaten im Abfrageparameter unterstützt werden. Bei der Erstellung von Tokens könnten die Anmeldedaten des Benutzers als Teil der URL bereitgestellt und im Browser-Verlauf oder in Netzwerkkomponenten erfasst und offengelegt werden. Diese Einstellung sollte deaktiviert werden, sofern sie nicht für andere Anwendungen erforderlich ist.

SS05

Critical

Filter web content aktiviert

Erstellt eine Liste der Feature-Services, in denen die filter web content-Eigenschaft deaktiviert ist. Ist diese Eigenschaft deaktiviert, kann der Benutzer beliebigen Text in die Eingabefelder eingeben, wodurch der Service potenziellen Cross-Site-Scripting-(XSS-)Angriffen ausgesetzt wird. Diese Eigenschaft ist standardmäßig aktiviert und sollte nur dann deaktiviert werden, wenn nicht unterstützte HTML-Entitäten oder -Attribute erforderlich sind.

SS06

Critical

Berechtigungen für Systemordner

Ermittelt, ob für den Systemordner von Server Manager nicht standardmäßige Berechtigungen gelten. Standardmäßig sollten nur Administratoren und Publisher Zugriff auf die Services im Systemordner haben.

SS07

Important

REST-Services-Verzeichnis

Legt fest, ob auf das REST-Services-Verzeichnis über einen Webbrowser zugegriffen werden darf. Um möglichst zu vermeiden, dass Ihre Services in einem Browser gelesen, in einer Internetsuche gefunden oder über HTML-Formulare abgefragt werden, sollte das Verzeichnis deaktiviert werden – es sei denn, es wird aktiv für die Suche nach Services durch die Benutzer verwendet. Dies bietet zusätzlichen Schutz vor Cross-Site-Scripting-(XSS-)Angriffen.

SS08

Important

Domänenübergreifende Beschränkungen

Legt fest, ob domänenübergreifende Anforderungen auf bestimmte Domänen beschränkt sind. Um die Möglichkeit zu verringern, dass eine unbekannte Anwendung bösartige Befehle an Ihre Web-Services sendet, wird empfohlen, die Verwendung Ihrer Services auf Anwendungen zu beschränken, die ausschließlich in vertrauenswürdigen Domänen gehostet werden.

SS09

Important

Dynamischer Workspace

Erstellt eine Liste der Services, auf deren Datenbanken über einen dynamischen Workspace zugegriffen werden kann. Ohne angemessenen Schutz kann die Datenbank/der Workspace über REST dem Zugriff bösartiger Dritter ausgesetzt werden. Dynamische Workspaces sollten nur dann aktiviert werden, wenn der Service und die dynamische Layer-/Workspacefunktion für die aktive Nutzung in einer Webanwendung vorgesehen ist. In diesen Fällen sollte unbedingt sichergestellt werden, dass die vom Kartenservice verwendete Datenbankverbindung für die Verbindung mit dem Workspace bzw. der Datenbank mindestens über die für die Anwendung erforderlichen Berechtigungen verfügt, beispielsweise schreibgeschützten Zugriff ausschließlich auf diejenigen zusätzlichen Tabellen im Workspace, die benötigt werden.

SS10

Recommended

Web Adaptor über HTTPS

Ermittelt, ob ein oder mehrere Web Adaptors über HTTPS registriert sind. Um eine erfolgreiche Umleitung von Server Manager zu HTTPs zu ermöglichen, sollten alle Web Adaptors über HTTPS registriert werden.

SS11

Recommended

PSA-Konto deaktivieren

Stellt fest, ob das primäre Site-Administratorkonto aktiviert ist. Es wird empfohlen, dieses Konto zu deaktivieren, um sicherzustellen, dass es außer der Gruppe oder Rolle, die Sie im Identitätsspeicher festgelegt haben, keine andere Möglichkeit zum Verwalten von ArcGIS-Server gibt.

SS12

Recommended

Berechtigungen für Feature-Services

Listet Feature-Services auf, bei denen die Operationen update oder delete aktiviert und die für anonymen Zugriff freigegeben sind. Dadurch können die Feature-Service-Daten ohne Authentifizierung geändert oder gelöscht werden.

Das serverscan-Skript ist im Verzeichnis <ArcGIS Server installation location>/tools/admin gespeichert. Führen Sie das Skript über die Befehlszeile oder -shell aus. Sie haben beim Ausführen des Skripts die Möglichkeit, Parameter anzugeben.

serverScan.py-Parameter

Parameter Beschreibung

-n

Der vollständig qualifizierte Domänenname des Computers, auf dem der Server installiert ist (d. h. gisserver.domain.com). Die Standardeinstellung ist der Hostname des Computers, auf dem das Skript ausgeführt wird.

-u

Der Benutzername eines Administratorkontos.

-p

Das Kennwort eines Administratorkontos.

-o

Das Verzeichnis, in dem der Sicherheitsüberprüfungsbericht gespeichert wird. Das Standardverzeichnis entspricht dem Ordner, in dem das Skript ausgeführt wird.

-t

Anstelle des Benutzernamens und Kennworts kann ein Token erstellt werden. Wenn ein Portal-Token für einen Verbundserver generiert wird, sollte der vollständig qualifizierte Domänenname des überprüften Servers in das Feld "Webapp-URL" eingegeben werden. Wenn ein Token für einen unverbundenen Server generiert wird, muss es über das Administratorverzeichnis (arcgis/admin/generateToken) und mit dem "Request IP"-Client generiert werden. Wird ein Token bereitgestellt, überschreibt es jeden angegebenen Benutzernamen bzw. jedes angegebene Kennwort.

-h oder -?

Gibt eine Liste der Parameter aus, die beim Ausführen des Skripts angegeben werden können.

Beispiel: python serverScan.py -n gisserver.domain.com -u admin -p my.password -o C:\Temp

Wenn das Skript "serverScan.py" ohne Angabe von Parametern ausgeführt wird, werden Sie aufgefordert, sie manuell einzugeben oder den Standardwert auszuwählen. Falls Sie ein Token verwenden möchten, muss es beim Ausführen des Skripts als Parameter bereitgestellt werden.

Der Scan erstellt einen Bericht im HTML-Format, in dem jegliche oben aufgeführte Probleme, die in der angegebenen ArcGIS-Server-Site gefunden wurden, aufgelistet sind.

Der Bericht wird standardmäßig im selben Ordner gespeichert, aus dem Sie das Skript ausgeführt haben, und hat den Namen serverScanReport_[hostname]_[date].html.


In diesem Thema
  1. serverScan.py-Parameter