Skip To Content

Sicherheitsempfehlungen

Beim Sichern von ArcGIS Server ist es wichtig, dass die Umgebung, in der ArcGIS Server ausgeführt wird, ebenfalls sicher ist. Es gibt mehrere Best Practices, um optimale Sicherheit zu gewährleisten.

Anfordern und Konfigurieren eines eigenen Serverzertifikats

ArcGIS Server enthält standardmäßig ein vorkonfiguriertes selbstsigniertes Zertifikat, mit dem der Server zuerst getestet werden kann. So lässt sich mit dem Zertifikat schnell überprüfen, ob die Installation erfolgreich ausgeführt wurde. In den meisten Fällen empfiehlt es sich jedoch, ein Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle (CA) anzufordern und den Server für dessen Verwendung zu konfigurieren. Hierbei sollte es sich um ein von Ihrer Organisation ausgegebenes oder ein von einer Zertifizierungsstelle (CA) signiertes Zertifikat handeln.

Wie ArcGIS Server verfügt das ArcGIS Enterprise-Portal über ein vorkonfiguriertes selbstsigniertes Zertifikat. Wenn Sie Ihre Site mit einem Portal verbinden, fordern Sie ein Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle an, und konfigurieren Sie das Portal für dessen Verwendung.

Die Konfiguration eines Zertifikats von einer vertrauenswürdigen Zertifizierungsstelle stellt eine Sicherheitsempfehlung für webbasierte Systeme dar. Auf diese Weise erhalten Benutzer weder Browser-Warnungen noch kommt es zu unerwartetem Verhalten. Wenn Sie beim Testen das selbstsignierte Zertifikat verwenden, das in ArcGIS Server und dem ArcGIS Enterprise enthalten ist, tritt Folgendes ein:

  • Warnungen von Ihrem Webbrowser, von ArcGIS Desktop oder von ArcGIS Pro zu einer nicht vertrauenswürdigen Site. Wenn ein Webbrowser ein selbstsigniertes Zertifikat erkennt, zeigt er in der Regel eine Warnung an, und fordert Sie auf, zu bestätigen, dass Sie zu der Site weitergeleitet werden möchten. Viele Browser zeigen Warnsymbole oder eine rot markierte Adressleiste an, solange Sie das selbstsignierte Zertifikat verwenden.
  • Ein Verbundservice kann in Map Viewer oder Map Viewer Classic des Portals nicht geöffnet werden, dem Portal kann kein gesichertes Service-Element hinzugefügt werden, die Anmeldung bei ArcGIS Server Manager auf einem Verbundserver kann nicht durchgeführt werden oder es kann keine Verbindung von ArcGIS for Office zum Portal hergestellt werden..
  • Unerwartetes Verhalten beim Konfigurieren von Utility-Services, Drucken von gehosteten Services und beim Zugreifen auf das Portal über Client-Anwendungen.
Vorsicht:

Die oben aufgeführte Liste der Probleme, die im Zusammenhang mit der Verwendung eines selbstsignierten Zertifikats auftreten, erhebt keinen Anspruch auf Vollständigkeit. Es ist unbedingt erforderlich, ein von einer Zertifizierungsstelle signiertes Zertifikat zu verwenden, um das Portal vollständig zu testen und bereitzustellen.

Weitere Anweisungen zum Konfigurieren von ArcGIS Enterprise mit einem von einer Zertifizierungsstelle signierten Zertifikat finden Sie in den folgenden Themen:

Scannen nach Cross-Site-Scripting-Angriffen

Bei Cross-Site-Scripting-Angriffen (XSS) wird Schadcode in vorhandene Webseiten eingefügt und ausgeführt. Häufig täuscht der Angreifer das Opfer und verleitet es dazu, die betreffende Seite zu öffnen, die vom Angreifer bereitgestellte Daten oder Eingaben enthält. Auf ArcGIS Server-Sites kann es sich bei diesen Daten um Features handeln, die von einem Feature-Service zurückgegeben wurden.

Mit ArcGIS Server können Features auf potenzielle XSS-Angriffe gescannt werden. Features können einerseits beim Hinzufügen und Aktualisieren gescannt werden und darüber hinaus, wenn sie an Client-Anwendungen gesendet werden. Beim Überprüfen eines Features auf Schadcode sind jedoch auch falsche Treffer möglich oder die Deaktivierung von gültigem HTML-Code, der einem Feature zum Anzeigen von HTML-Pop-ups hinzugefügt wurde. Das Scanverhalten kann auf Service-Basis konfiguriert werden.

Standardmäßig werden Services bei ihrer Erstellung so konfiguriert, dass sie Bearbeitungen auf potenzielle Skripte hin untersuchen und diese blockieren, aber sie scannen keine Features, die vom Feature-Service abgerufen wurden. Ein Angreifer könnte diesen Scanvorgang für Bearbeitungen umgehen, indem er die Features so ändert, dass die Bearbeitungen nicht gescannt werden, zum Beispiel, indem die Datenbank mittels SQL bearbeitet wird. Am sichersten ist es, wenn Sie Ihre Services so konfigurieren, dass sämtliche Features gescannt werden. Durch das Scannen jedes Features, das von einem Skript abgerufen wird, kann sich die Performance verringern, es stellt aber eine gute Sicherheitsmaßnahme dar.

Das Ändern der Werte auf Basis der einzelnen Services kann die Verwaltung erschweren, weshalb üblicherweise unter Verwendung der Eigenschaft featureServiceXSSFilter ein Standardwert definiert wird. Dies ist eine Systemeigenschaft, die beim Erstellen von Services verwendet wird. Sie hat keine Auswirkung auf vorhandene Services und kann überschrieben werden, nachdem ein Service erstellt wurde.

Zum Festlegen dieser Systemeigenschaft melden Sie sich beim ArcGIS Server-Administratorverzeichnis an, und klicken Sie auf System > Properties. Die Eigenschaften werden als JSON-Objekt dargestellt. Kopieren Sie das vorhandene JSON-Objekt, und passen Sie es an, indem Sie die featureServiceXSSFilter-Eigenschaft hinzufügen.

Die featureServiceXSSFilter-Eigenschaft kann entweder auf input oder auf inputOutput festgelegt werden. Der input-Wert ist standardmäßig vorgegeben: Damit wird ArcGIS Server angewiesen, neue Feature-Services so zu konfigurieren, dass Bearbeitungen gescannt werden. Der inputOutput-Wert weist ArcGIS Server an, neue Feature-Services so zu konfigurieren, dass Bearbeitungen und zurückgegebene Features gescannt werden.

Um die Einstellungen eines bestimmten Service zu überschreiben, müssen Sie das ArcGIS Server-Administratorverzeichnis verwenden, den betreffenden Service finden und diesen bearbeiten. Die folgenden drei Eigenschaften werden auf Basis einzelner Feature-Services angewandt:

  • xssPreventionEnabled aktiviert das Scannen nach Skripten und Code innerhalb von Features. Legen Sie diese Einstellung auf true fest.
  • xssPreventionRule kann wahlweise auf input oder inputOutput festgelegt werden. Bearbeitungen werden immer gescannt, aber ausgehende Features werden nur dann auf Skripte gescannt, wenn der Wert inputOutput festgelegt wurde. Hiermit wird die systemweit gültige featureServiceXSSFilter-Eigenschaft überschrieben.
  • xssInputRule gibt die Antwort auf gefundenen Schadcode an. Die Optionen sind rejectInvalid bzw. sanitizeInvalid. Der rejectInvalid-Wert entspricht dem Standardverhalten und wird empfohlen.

Beschränken von Dateiberechtigungen

Legen Sie Dateiberechtigungen so fest, dass der Zugriff auf das Installationsverzeichnis, den Konfigurationsspeicher und die Serververzeichnisse von ArcGIS Server auf die notwendigen Konten beschränkt ist. Das einzige Konto, auf das die ArcGIS Server-Software Zugriff benötigt, ist das ArcGIS Server-Konto. Dieses Konto wird zum Ausführen der Software verwendet. Möglicherweise werden in Ihrer Organisation weitere Konten für den Zugriff benötigt. Denken Sie daran, dass das ArcGIS Server-Konto vollständigen Zugriff auf das Installationsverzeichnis, den Konfigurationsspeicher und die Serververzeichnisse benötigt, damit die Site ordnungsgemäß funktioniert.

ArcGIS Server übernimmt die Dateiberechtigungen vom übergeordneten Ordner, in dem die Software installiert ist. Darüber hinaus erteilt ArcGIS Server dem ArcGIS Server-Konto Zugriffsberechtigung auf das Installationsverzeichnis. Dateien, die erstellt werden, während ArcGIS Server ausgeführt wird (z. B. Protokolle), übernehmen die Berechtigungen vom übergeordneten Ordner. Um den Konfigurationsspeicher und die Serververzeichnisse zu sichern, legen Sie eingeschränkte Berechtigungen für den übergeordneten Ordner fest.

Jedes Konto mit Schreibzugriff auf den Konfigurationsspeicher kann ArcGIS Server-Einstellungen ändern, die in der Regel nur von einem Systemadministrator geändert werden können. Wenn ein integrierter Sicherheitsspeicher zum Verwalten von Benutzern verwendet wird, enthält der Konfigurationsspeicher verschlüsselte Kennwörter für diese Benutzer. In diesem Fall sollte auch der Lesezugriff auf den Konfigurationsspeicher beschränkt werden.

Wenn Sie gesicherte Karten- oder Geoverarbeitungsservices verwenden, sperren Sie Dateiberechtigungen für Serververzeichnisse, um sicherzustellen, dass nicht autorisierte Konten keinen Zugriff auf Ausgaben von Karten- und Geoverarbeitungsaufträgen erhalten.

Deaktivieren des primären Site-Administratorkontos

Das primäre Site-Administratorkonto ist das Konto, das Sie angeben, wenn Sie eine Site in ArcGIS Server Manager erstellen. Der Name und das Kennwort des Kontos werden nur von ArcGIS Server erkannt. Es handelt sich dabei nicht um ein Betriebssystemkonto, und die Verwaltung erfolgt separat von dem Benutzerkonto in Ihrem Identitätsspeicher.

Deaktivieren Sie das primäre Site-Administratorkonto, 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. Vollständige Anweisungen finden Sie unter Deaktivieren des primären Site-Administratorkontos.

Definieren des gemeinsam verwendeten Schlüssels zum Erstellen eines ArcGIS-Token

Ein ArcGIS-Token ist eine Zeichenfolge mit verschlüsselten Informationen. Der freigegebene Schlüssel ist der kryptografische Schlüssel, der zum Generieren dieser verschlüsselten Zeichenfolge verwendet wird. Je komplexer der freigegebene Schlüssel ist, um so schwerer ist es für Benutzer mit bösen Absichten, die Verschlüsselung zu überwinden und den Schlüssel zu entschlüsseln. Falls ein Benutzer es schafft, den freigegebenen Schlüssel zu entschlüsseln, den ArcGIS-Server-Verschlüsselungsalgorithmus zu replizieren und die Liste berechtigter Benutzer abzurufen, kann er Token generieren und auf jede gesicherte Ressource auf diesem speziellen ArcGIS-Server zugreifen.

Bevor Sie einen freigegebenen Schlüssel definieren, sollten Sie Folgendes beachten:

  • Für den freigegebenen Schlüssel sollten 16 Zeichen festgelegt werden (alle Zeichen nach dem 16. Zeichen werden nicht verwendet). Es wird empfohlen, eine Abfolge zufälliger Zeichen für den Schlüssel zu verwenden. Alle Zeichen sind zulässig, einschließlich nicht alphanumerischer Zeichen.
  • Der Schlüssel sollte nicht auf einen Wert festgelegt werden, der leicht geraten werden kann (kein bestehendes Wort oder gängiger Wert). Da die Benutzer den Schlüssel weder andernorts verwenden noch ihn sich merken müssen, stellt die geforderte Komplexität anders als bei Kennwörtern hier kein Problem dar.
  • Das Token wird mit der AES-Verschlüsselungsmethode (Advanced Encryption Standard), die auch Rijndael genannt wird, mit dem freigegebenen Schlüssel verschlüsselt. Die 16 Zeichen im Schlüssel stellen die 128 Bits dar, die zum Verschlüsseln verwendet werden. Weitere Informationen zur Verschlüsselung und zu AES finden Sie in Sicherheitsreferenzen oder erhalten Sie von Mitarbeitern Ihres Unternehmens, die über Kenntnisse in Sicherheit und Kryptografie verfügen.
  • In hoch geschützten Umgebungen wird empfohlen, den freigegebenen Schlüssel regelmäßig zu ändern. Denken Sie daran, dass die Anwendungen möglicherweise aktualisiert werden müssen, um den neuen freigegebenen Schlüssel verwenden zu können. Alle vorhandenen eingebetteten Token werden ungültig, nachdem der freigegebene Schlüssel geändert wurde.

Weitere Informationen finden Sie unter ArcGIS-Token.

Verwenden eines gruppenverwalteten Service-Kontos

Die ArcMap-Runtime kann wie folgt deaktiviert werden: Verwenden Sie ein gruppenverwaltetes Service-Konto (gMSA; Group Managed Service Account) als Konto für die Ausführung des ArcGIS Server-Service. Durch die Verwendung eines gMSA können die Vorteile eines Active Directory-Domänenkontos genutzt und das Konto durch regelmäßige Kennwortaktualisierungen gesichert werden.

Weitere Informationen zu gruppenverwalteten Service-Kontos

Entfernen Sie Python 2.x von Ihrem System, indem Sie die Funktion zur Unterstützung der ArcMap-Runtime deaktivieren.

Die Python Software Foundation hat die Unterstützung für die Programmiersprache für Python 2 eingestellt. Dies hat Auswirkungen auf ArcGIS Server, da ArcMap-basierte Services eine Installation von Python 2.x im Software-Setup verwenden. Bei Bedenken hinsichtlich der Installation von Python 2.x auf Ihrem System gibt es jetzt eine Option, diese aus der ArcGIS Server 2.x-Bereitstellung zu entfernen.

Bei Version 10.9.1 kann die Funktion zur Unterstützung der ArcMap-Runtime wie folgt deaktiviert werden:

Wenn Sie die Funktion zur Unterstützung der ArcMap-Runtime deaktivieren, ist die ArcMap-Service-Runtime in ArcGIS Server nicht enthalten, und Python 2.x wird nicht installiert. Sie müssen alle ArcMap-basierten Services migrieren oder neu veröffentlichen, um die ArcGIS Pro-Service-Runtime mit Python 3.x verwenden zu können. Nach dem Migrieren oder erneuten Veröffentlichen der verknüpften Services müssen Sie für die Verwendung des ArcGIS Enterprise-SDK außerdem alle ArcObjects SDK-basierten Serverobjekterweiterungen (SOEs) und Serverobjekt-Interceptoren (SOIs) neu erstellen. Für die Verwendung der Python 3.x-Syntax müssen die Python 2.x-Skripte und Werkzeuge ebenfalls aktualisiert werden.

ArcGIS Enterprise 10.9.1 ist die letzte Version, die Unterstützung für ArcMap-basierte Services bietet. Nach dieser Version ist es nicht mehr möglich, Services von ArcMap (einschließlich ArcPy-basierter Services in ArcMap) auf ArcGIS Server-Sites zu verwenden und zu veröffentlichen. Services, die die ArcMap-Service-Runtime verwenden, lassen sich nicht mehr ausführen, wenn sie während eines Upgrades auf eine spätere Version von ArcGIS Server bereits vorhanden waren. Daher empfiehlt Esri die zeitnahe Migration zu ArcGIS Pro-basierten Services und zu Python 3.x.

Sie können die Migration zu ArcGIS Pro-basierten Services und zu Python 3.x mit der aktuell verwendeten Version vor 10.9.1 durchführen, ein Upgrade auf 10.9.1 durchführen, ohne die ArcMap-Runtime zu installieren, und dann überprüfen, ob die Migration erfolgreich war. Sie können die Funktion zur Unterstützung der ArcMap-Runtime auch mit Version 10.9.1 installieren und sie nach der Migration Ihrer ArcGIS Pro-basierten Services und benutzerdefinierten Lösungen wieder entfernen. Sie können die Funktion zur Unterstützung der ArcMap-Runtime in Ihrer 10.9.1-Bereitstellung wieder aktivieren, wenn Sie während des Migrationsprozesses feststellen, dass dies erforderlich ist.

Sichere Übertragung von ArcGIS-Token

Verwenden Sie eine sichere Verbindung mit HTTPS, um das Abfangen und den Missbrauch von Token zu verhindern. Durch die Verwendung von HTTPS wird sichergestellt, dass der Benutzername und das Kennwort, die vom Client gesendet werden, und das von ArcGIS Server zurückgegebene Token nicht abgefangen werden können. Weitere Informationen finden Sie unter Sichern der Kommunikation mit ArcGIS Server.

Beim Erstellen benutzerdefinierter ArcGIS-Client-Anwendungen, die mit GET-Anforderungen auf Web-Services zugreifen, welche mit ArcGIS-Token-basierter Authentifizierung gesichert sind, senden Sie statt eines Abfrageparameters das Token im X-Esri-Autorisierungsheader. Dadurch kann verhindert werden, dass zwischengeschaltete Instanzen im Netzwerk, z. B. Proxys, Gateways oder Load-Balancer, das Token abrufen. Im folgenden Beispiel für eine HTTP-GET-Anforderung wird das Token im X-Esri-Autorisierungsheader gesendet:

GET https://arcgis.mydomain.com/arcgis/rest/services/SampleWorldCities/MapServer?f=pjson HTTP/1.1
    Host: arcgis.mydomain.com
    X-Esri-Authorization: Bearer xMTuPSYpAbj85TVfbZcVU7td8bMBlDKuSVkM3FAx7zO1MYD0zDam1VR3Cm-ZbFo-

Wenn ArcGIS Server die ArcGIS Server-Authentifizierung, nicht jedoch die Authentifizierung auf Webebene (IWA, HTTP BASIC, PKI usw.) verwendet, kann anstelle des X-Esri-Autorisierungsheaders der standardmäßige HTTP-Autorisierungsheader verwendet werden:

GET https://arcgis.mydomain.com/arcgis/rest/services/SampleWorldCities/MapServer?f=pjson HTTP/1.1
    Host: arcgis.mydomain.com
    Authorization: Bearer xMTuPSYpAbj85TVfbZcVU7td8bMBlDKuSVkM3FAx7zO1MYD0zDam1VR3Cm-ZbFo-

Verwenden von standardisierten Abfragen

ArcGIS Server bietet eine Sicherheitsoption, standardisierte Abfragen genannt, die einen besseren Schutz vor der Einschleusung von SQL-Befehlen bietet. Diese Option ist standardmäßig aktiviert.

Serveradministratoren wird empfohlen, diese Sicherheitsoption aktiviert zu lassen und Anwendungsentwickler anzuweisen, WHERE-Klausel-Anweisungen zu erstellen, die eine datenbankunabhängige Syntax verwenden. Die Deaktivierung dieser Option kann Ihr System anfälliger für die Einschleusung von SQL-Befehlen machen.

Weitere Informationen hierzu finden Sie unter Standardisierte Abfragen.

Deaktivieren des Services-Verzeichnisses

Das Services-Verzeichnis kann deaktiviert werden, um zu vermeiden, dass Ihre Services durchsucht, im Internet gefunden oder über HTML-Formulare abgefragt werden können. Die Deaktivierung des Services-Verzeichnisses bietet außerdem Schutz vor XSS-Angriffen.

Die Entscheidung, das Services-Verzeichnis zu deaktivieren, ist abhängig vom Zweck der Site und dem Grad, in dem Benutzer und Entwickler darin navigieren müssen. Wenn Sie das Services-Verzeichnis deaktivieren, müssen Sie wahrscheinlich andere Listen oder Metadaten zu den auf der Site verfügbaren Services erstellen.

Anweisungen zur Deaktivierung von Services-Verzeichnissen finden Sie unter Deaktivieren des Services-Verzeichnisses.

Beschränken von domänenübergreifenden Anforderungen

Domänenübergreifende Anforderungen kommen bei vielen Systemangriffen zur Anwendung. Es wird empfohlen, die Verwendung von ArcGIS Server-Services nur auf Anwendungen zu beschränken, die in vertrauenswürdigen Domänen gehostet werden. Weitere Informationen hierzu finden Sie unter Beschränken von domänenübergreifenden Anforderungen an ArcGIS Server.