PKI- und Client-Zertifikate

Eine gängige Methode zum Sichern der Kommunikation zwischen Clients und Services ist die Verwendung der Clientzertifikatauthentifizierung. Dieser Begriff kann eine weit gefasste Definition von Client- und Server-Workflows umfassen. Er kann beispielsweise für einen Benutzer verwendet werden, der eine Webseite anfordert, oder für ein Backend-System, das sich in einer Kommunikation zwischen Servern mit einer API verbindet. PKI-Zertifikate können zur Verschlüsselung der Webkommunikationen, zum Signieren von Code und Anwendungen, zur Authentifizierung eines Benutzers bei einem Remote-System oder zur Kommunikation zwischen Personen durch Muster wie Pretty Good Privacy (PGP) verwendet werden.

Client-Zertifikate werden in der Regel für einen Benutzer von einer Zertifizierungsstelle generiert, die von einer IT-Organisation des Unternehmens gepflegt oder verwaltet wird. Sie werden im Betriebssystemspeicher, auf einem separaten Gerät oder einem anderen Speichermedium wie einem USB-Stick oder einer Smart-ID-Karte gespeichert. Sie können an mehrere verschiedene Computer angeschlossen werden, sodass sich der Benutzer von verschiedenen Standorten aus authentifizieren kann.  

Client-Authentifizierung bei ArcGIS-Services

Bei ArcGIS-Systemen werden Client-Zertifikate am häufigsten für die Authentifizierung von Benutzern bei einem Authentifizierungsanbieter verwendet. Im Folgenden werden zwei wichtige Implementierungsmuster für diesen Workflow beschrieben.

Authentifizierung auf Webebene

Bei ArcGIS Enterprise bezieht sich Authentifizierung auf Webebene auf ein Muster, bei dem zur Einrichtung der Authentifizierung eine Installation von ArcGIS Web Adaptor auf einem Webserver gehostet wird. Dieses Muster sieht im Allgemeinen wie folgt aus:

  1. Wenn ein Benutzer zum ersten Mal auf ArcGIS Enterprise, also auf die ArcGIS Server- oder Portal for ArcGIS-Komponente, zugreift, antwortet der Webserver auf die Benutzeranforderung mit der Aufforderung, ein Client-Zertifikat bereitzustellen.
  2. Der Benutzer kann ein Zertifikat bereitstellen, das mithilfe des Trust Store des Webservers überprüft wird. Bei der Überprüfung sendet ArcGIS Web Adaptor den Benutzernamen des Benutzers an die Komponente, die wiederum eine Sitzung einrichtet.
Hinweis:

Für diesen Vorgang muss das Client-Zertifikat nicht an ArcGIS Enterprise gesendet oder von ArcGIS Enterprise als vertrauenswürdig eingestuft werden. Es wird kein Kennwort mit der ArcGIS-Komponente ausgetauscht oder überprüft. Dem Benutzer wird der Zugriff durch das implizite Vertrauen in die Authentifizierung des Client-Zertifikats gewährt.

SAML- oder OIDC-basierter IdP

Dieses Muster wird mit der Einführung moderner Authentifizierungsmethoden immer beliebter. Dabei wird ein Client-Zertifikat verwendet, um den Benutzer bei einem SAML- oder OIDC-basierten Identity-Provider (IdP) zu authentifizieren. Bei diesem Muster gibt es keine Interaktion mit ArcGIS Enterprise oder ArcGIS Online zur Authentifizierung des Client-Zertifikats. Der Workflow sieht vielmehr wie folgt aus:

  1. Wenn ein Benutzer versucht, sich bei ArcGIS anzumelden, wird er aufgefordert, einen SAML- oder OIDC-basierten Anmeldevorgang für seinen IdP zu initiieren.
  2. Der IdP, in der Regel ein separat verwaltetes und gehostetes System, kann verschiedene Authentifizierungsmuster zulassen, z. B. die Clientzertifikatauthentifizierung über eine Smartcard oder ein vom Betriebssystem verwaltetes Zertifikat sowie andere Optionen wie die Authentifizierung mittels Benutzername und Kennwort.
  3. Nachdem sich der Benutzer erfolgreich beim IdP authentifiziert hat, wird seine Sitzung mit ArcGIS über eine SAML-Assertion oder einen OIDC-Claim initiiert, und das Client-Zertifikat wird erst nach Ablauf der Sitzung erneut angefordert.

Authentifizierung zwischen Services mit PKI

Ein weiteres Muster der auf Client-Zertifikaten basierenden Authentifizierung hat mit Anforderungen zu tun, die von einer serverseitigen Komponente, einem Web-Service oder einem anderen Prozess stammen, im Gegensatz zur Sitzung eines einzelnen Benutzers über eine Software, z. B. einen Webbrowser. Dieser Prozess kann in einer Vielzahl von Workflows wie den folgenden vorkommen:

  • Ein ArcGIS Server-Druck-Service versucht, eine Verbindung mit einem durch PKI gesicherten Endpunkt für einen Karten- oder Feature-Service herzustellen.
  • Ein in der Cloud verwalteter API-Service authentifiziert sich bei einem Backend- oder lokalen Service und verlangt eine Clientzertifikatauthentifizierung.

In diesen Szenarien muss eine Konfiguration angewendet werden, mit der ein Client-Zertifikat bereitgestellt wird, das der Service für die Authentifizierung beim Backend-System verwendet. Die Konfiguration kann viele Formen annehmen bzw. diese Szenarien können auf unterschiedliche Weise konfiguriert werden.

Weitere Überlegungen und Empfehlungen

  • Die PKI-Authentifizierung von nativen und mobilen Anwendungen, die mit ArcGIS Maps SDKs erstellt wurden, erfordert aufgrund der Verwendung und Speicherung von Client-Zertifikaten auf mobilen Geräten möglicherweise besondere Aufmerksamkeit.
  • Die Implementierung der PKI-Authentifizierung und die Art und Weise, wie Benutzer damit interagieren, kann je nach Konfiguration des Betriebssystems, des Browsers und der Einstellungen der einzelnen Benutzer erheblich variieren.
  • Zur Behebung von Problemen oder Fehlern im Zusammenhang mit der PKI sind spezielle Kenntnisse und ein Verständnis des beabsichtigten Konzepts des gesamten PKI-Systems innerhalb des Netzwerks oder der IT-Umgebung erforderlich. Zur Gewährleistung der Einhaltung von Vorschriften und der ordnungsgemäßen Nutzung ist die Zusammenarbeit mit Experten für Cybersicherheit oder IT unerlässlich.
  • Für Client-Zertifikate gelten die gleichen Überlegungen zu Gültigkeit, Vertrauenskette und Attributen wie SSL/TLS-Zertifikate von Webservern. Sie sollten sorgfältig überwacht, aktualisiert und verwaltet werden, damit Benutzer keine unerwarteten Unterbrechungen erleben.
Top