Autorisierungs- und Zugriffsmodelle
Nachdem ein Authentifizierungsschritt abgeschlossen ist und ein Benutzer über ein gültiges Zugriffstoken für ArcGIS verfügt, werden Autorisierungs- und Zugriffsregeln angewendet. Diese können eine Vielzahl von Formen annehmen. ArcGIS wurde so konzipiert, dass komplexe, organisationsspezifische Autorisierungsmodelle oder -strukturen unterstützt werden.
Autorisierung des Zugriffs
Diese Art der Autorisierung regelt, auf welche Inhalte, Services oder Schnittstellen ein Benutzer zugreifen darf. In ArcGIS erfolgt die Autorisierung des Zugriffs über das ArcGIS-Freigabemodell, das auf folgenden Prinzipien basiert:
- Inhaltselemente in ArcGIS sind im Besitz eines bestimmten Benutzerkontos. Ein einzelner Benutzer kann Inhalte in seinem Besitz verwalten, bearbeiten und löschen und für diese Inhalte alle Vorgänge ausführen.
- Elemente können für Gruppen in ArcGIS freigegeben werden. Gruppen sind Konstrukte, die in ArcGIS erstellt werden und die über gruppenspezifische Metadaten und eine Liste der beteiligten Mitglieder verfügen. Ein Gruppentyp ist eine Gruppe mit gemeinsamer Aktualisierung, die es jedem Mitglied der Gruppe ermöglicht, die für die Gruppe freigegebenen Elemente zu bearbeiten und zu verwalten.
- Gruppen können auch auf Enterprise-Gruppen basieren, wobei die Gruppenmitgliedschaft in einem externen Organisationsverzeichnis definiert und über Active Directory-, LDAP-, SAML- oder OIDC-Authentifizierungsprozesse an ArcGIS weitergegeben wird. In diesem Fall wird die Mitgliedschaft des Benutzers in einer ArcGIS-Gruppe durch diese Mitgliedschaft in einer Enterprise-Gruppe definiert. Diese Mitgliedschaft wird zum Zeitpunkt der Anmeldung bei ArcGIS eingerichtet, gilt für diese Sitzung und wird bei jeder zukünftigen Anmeldung aktualisiert.
- Elemente können auch für die Organisation oder für alle freigegeben werden.
- Bei der Freigabe für die Organisation kann jeder Benutzer, der durch Authentifizierung eine gültige Sitzung für die Organisation einrichten kann, auf die Elemente zugreifen und mit ihnen interagieren.
- Bei der Freigabe für alle kann jeder Benutzer mit HTTPS-Verbindung zum System den Inhalt anzeigen. Er ist anonym entweder über das WAN des Systems oder über das Internet zugänglich, je nachdem, wie das Netzwerk konfiguriert ist. Netzwerkzugriffskontrollen können diese Exposition weiter begrenzen.
Der Benutzerzugriff wird zum Zeitpunkt der Anforderung festgelegt. Wenn sich die Freigabeeinstellungen ändern oder ein Benutzer aus einer Gruppe entfernt wird, verliert er sofort den Zugriff auf die für die Gruppe freigegebenen Inhalte oder Inhaltselemente.
Wenn API-Schlüssel verwendet werden, wird der Zugriff auf Inhalte insbesondere in ArcGIS Location Platform dadurch gesteuert, dass der API-Schlüssel um den Elementzugriff erweitert wird.
Autorisierung von Funktionen
Neben dem Zugriff auf Inhalte gibt es noch eine weitere Art der Autorisierung, die Sie in einem bestimmten System verwenden können. Dazu gehört der Zugriff auf Funktionen, Schnittstellen oder bestimmte Werkzeuge oder Anwendungen innerhalb des ArcGIS-Systems. Diese Autorisierung erfolgt in der Regel ebenfalls über ArcGIS. Dabei gelten mehrere verschiedene Prinzipien:
- Jedem Benutzer in einem ArcGIS-System wird ein Benutzertyp zugewiesen, der die Ebene des Zugriffs auf Funktionen definiert. Beispiele für Benutzertypen sind Viewer, Creator oder Professional Plus.
- Jedem Benutzer wird außerdem eine Rolle zugewiesen, die seine Autorisierung über eine Reihe von zugewiesenen Berechtigungen für diese Rolle im ArcGIS-System genauer steuert. Mit diesen Berechtigungen können Inhalte erstellt, für alle Benutzer freigegeben, Python-Notebooks ausgeführt oder gehostete Bilddaten-Services erstellt werden. Zu den Standardrollen gehören unter anderem Viewer, Data Editor oder Publisher.
- Es gibt bestimmte Funktionen oder Zugriffsebenen, die standardmäßig in einem Benutzertyp enthalten sind. Darüber hinaus können bestimmten Benutzern Add-on-Anwendungen oder Benutzertyperweiterungen zugewiesen werden, um ihnen Zugriff auf zusätzliche Funktionen zu gewähren.
Die Einzelheiten dazu werden unter Benutzertypen, Rollen und Berechtigungen näher beschrieben. Funktionen und Zugriff werden eingerichtet, wenn sich ein Benutzer anmeldet, sodass sich der Benutzer bei Änderungen am Zugriff oder an den Berechtigungen möglicherweise erneut authentifizieren muss, damit die Aktualisierung angewendet werden kann.
Bei der Authentifizierung per API-Schlüssel erfolgt die Autorisierung von Funktionen auf andere Weise: Jeder API-Schlüssel verfügt über konfigurierte verfügbare Berechtigungen, z. B. für Funktionen für Geokodierung, Geoenrichment, Routing oder Grundkartenkacheln, während der Zugriff auf andere Funktionen bei Verwendung dieses API-Schlüssels verweigert wird.
Integration mit externen Autorisierungsmuster
Während die meisten Organisationen den Zugriff und die Berechtigungen für ArcGIS-Benutzer direkt in ArcGIS verwalten, müssen einige Organisationen die Autorisierung extern verwalten, wofür mehrere Optionen verfügbar sind.
- Die Gruppenmitgliedschaft kann durch die Verwendung von Enterprise-Gruppen verwaltet werden, wobei die Benutzermitgliedschaft entweder auf einem Anspruch basiert, der während der Anmeldung in einer SAML-Assertion eingebunden wird, einem OIDC-Anspruch oder einer Abfrage an einen in der Sicherheitskonfiguration definierten Remotegruppenspeicher, der ebenfalls während der Benutzeranmeldung abgefragt wird.
- Die meisten Identity-Provider für SAML- oder OIDC-basierte Anmeldungen enthalten eine Konfiguration, bei der Benutzer der ArcGIS-Anwendung entweder zugewiesen oder über einen Prozess bereitgestellt werden, wodurch sie den SAML- oder OIDC-Anmeldeprozess verwenden können. Benutzer, die nicht bereitgestellt wurden, können sich nicht über SAML oder OIDC anmelden, und es können verschiedene Prozesse definiert werden, um entweder automatisch ArcGIS-Zugriff für neue Konten bereitzustellen oder einen Anforderungsprozess durchzuführen.
- ArcGIS stellt REST-APIs für alle benutzerbasierten Autorisierungsaktionen bereit, z. B. das Erstellen und Verwalten von Gruppen, das Hinzufügen von Mitgliedern zu Gruppen, das Ändern von Benutzerrollen oder Benutzertypen usw. Die Automatisierung über ein externes Skript, Werkzeug oder System, wie z. B. ein Python-Notebook, kann auch verwendet werden, um die Autorisierung des Benutzerzugriffs zu automatisieren, indem eine Remote-Quelle abgefragt oder ein Survey123-Formular verwendet wird, um einen Prozess auszulösen, der einem Benutzer nach einer Überprüfung eine zusätzliche Autorisierung gewährt.