Rollenzuordnung
Identity Service übernimmt die Rollen- und Gruppen-Zuordnung des konfigurierten Identitätsanbieter und stellt sie als Rollen für angemeldete Personen zur Verfügung.
Über den Aufruf des "Self"-Endpunkt /identity/account/self können Sie die zugewiesenen Rollen für die aktuell angemeldete Person überprüfen.
Vertrauenswürdige Dienste können die Rollen über den Identity Service abfragen und abhängig davon Zugriff auf Funktionen gewähren oder verweigern.
Zu den vertrauenswürdigen Diensten, die Rolleninformationen von angemeldeten Personen auswerten, gehören Komponenten folgender con terra Technologies Produkte:
-
map.apps, für den Zugriff auf den map.apps Manager, Apps und Tools.
-
map.apps SDI, für den Zugriff auf gespeicherte App-Zustände.
-
service.monitor, für den Zugriff auf administrative Funktionen und das Management von Jobs.
-
smart.finder, für den Zugriff auf administrative Funktionen und den Suchindex.
-
smart.finder SDI, für die Steuerung des Zugriffs auf die Metadaten und deren Management.
-
security.manager OGC, für die Definition von Zugriffsrechten auf geschützte Dienste.
Um beispielsweise Zugriff auf den map.apps Manager zu erhalten, muss die angemeldete Person der Rolle maAdmin zugeordnet sein. In security.manager OGC können Sie Rollen referenzieren, wenn Sie Zugriffsrechte auf Layer vergeben.
Die Rollen, die der Identity Service für angemeldete Personen an vertrauenswürdige Dienste übermittelt, ergeben sich aus Rollen- und Gruppenzuordnungen, die im jeweiligen Identitätsanbieter vorgenommen wurden. In den folgenden Abschnitten wird beschrieben, wie der Identity Service diese Zuordnungen in Rollen übersetzt.
ArcGIS Enterprise-Portal und ArcGIS Online
Die hier beschriebene Rollenzuordnung gilt, wenn Sie ArcGIS Enterprise-Portal oder ArcGIS Online als Identitätsanbieter im Identity Service konfiguriert haben. Identity Service übersetzt sowohl Rollen als auch Gruppen, die einem ArcGIS-Account zugeordnet sind, in Rollen für angemeldete Personen.
Lesen Sie in den folgenden Abschnitten, nach welchen Regeln diese Übersetzung stattfindet und wie Sie sie anpassen können.
Rollen
In ArcGIS Enterprise-Portal und ArcGIS Online werden Personen einer einzelnen Rolle zugeordnet. Diese Rolle wird folgendermaßen übersetzt:
| Rolle | Rollen im Identity Service | Beschreibung |
|---|---|---|
|
|
Personen mit Administrationsrechten in ArcGIS Enterprise-Portal und ArcGIS Online erhalten durch die Übersetzung in alle genannten Rollennamen automatisch Administrationsrechte in map.apps, smart.finder, service.monitor und smart.finder SDI. |
|
|
Publisher werden immer der Rolle |
|
|
Alle anderen Rollen werden ohne Änderung übernommen. |
Gruppen
In ArcGIS Enterprise-Portal und ArcGIS Online können Personen mehreren Gruppen angehören.
Diese Gruppen übersetzt der Identity Service ebenfalls in Rollen.
Da unterschiedliche Personen Gruppen mit dem gleichen Titel anlegen können, übersetzt Identity Service Gruppen in einen eindeutigen Rollenamen der Form <Gruppentitel>::<Besitzer>.
| Gruppe | Rolle im Identity Service |
|---|---|
|
|
|
|
Organisation
Gehört der ArcGIS Online Zugang zu einer Organisation, so wird der Domain-Name der Organisation in eine Rolle übersetzt.
Beispiel: myorganization.maps.arcgis.com
Zuordnung anpassen
Die Übersetzung von Rollen und -Gruppen in ArcGIS Enterprise-Portal und ArcGIS Online zu Rollen im Identity Service können Sie bei Bedarf mit dem Konfigurationsparameter security.oauth.provider.arcgis.roles im Identity Service anpassen.
Keycloak
Wenn Sie Keycloak als Identitätsanbieter im Identity Service konfiguriert haben, übernimmt Identity Service die Rollennamen, die Personen in Keycloak zugewiesen sind. Dazu müssen Sie allerdings die Rollen in Keycloak über einen "Mapper" für die Client ID des Identity Service freigeben.
Der folgende Abschnitt beschreibt beispielhaft, wie Sie eine Rolle "maAdmin" in Keycloak anlegen, damit sie vom Identity Service übernommen wird.
Rollen in Keycloak einrichten
Rollen hinzufügen
Legen Sie eine Rollen wie folgt in Keycloak an:
-
Wählen Sie Clients.
-
Wählen Sie den Client
identity-serviceaus der Liste der Clients aus. -
Wechseln Sie in der Ansicht des
identity-service-Clients zum Roles Tab. -
Fügen Sie dort z.B. die Rolle
maAdminper Click auf Create role hinzu.
Mapper anlegen
Der Identity Service verwendet den User Information Endpunkt von Keycloak, um Rollen von Personen abzufragen. Durch die Anlage eines Mappers stellen Sie sicher, dass die zuvor angelegten Rollen beim Zugriff auf diesen Endpunkt auch zurückgeliefert werden.
Gehen Sie wie folgt vor, um einen Mapper anzulegen:
-
Wechseln Sie zur Ansicht Client scopes.
-
Klicken Sie auf den Eintrag
rolesdesOpenID ConnectProtokolls. -
Wechseln Sie in der folgenden Ansicht Roles zum Tab Mappers.
-
Klicken Sie > Add mapper > By configuration > User Client Role.
-
Verwenden Sie nun die folgenden Einstellungen für den neuen Mapper:
-
Name:
identity-service client role mapper -
Client ID: Selektieren Sie
identity-serviceaus der Client-Liste. -
Client Role prefix: Lassen Sie dieses Feld leer.
-
Multivalued:
ON -
Token Claim Name:
roles -
Claim JSON Type:
String -
Add to userinfo:
ON
-
-
Klicken Sie auf Save.
Zuordnung von Rollen
Um Rollen zu einer Person hinzuzufügen, gehen Sie wie folgt vor:
-
Klicken Sie auf Users in der Navigation von Keycloak.
-
Wählen Sie einen User aus. Die Detailseite des Users wird angezeigt.
-
Wechseln Sie in das Tab Role mapping.
-
Klicken Sie auf den Button Assign role und anschließend auf Client roles.
-
Selektieren Sie aus den angezeigten Rollen diejenigen Rollen, die der Person zugewiesen werden sollen, zum Beispiel
maAdmin. -
Klicken Sie auf Assign.
Eine Meldung über die erfolgreiche Aktualisierung sollte angezeigt werden. Die zugewiesene Rolle sollte in der Liste der Rollen des Users sichtbar sein.
Rollenzuordnung anpassen
Die Übersetzung von Rollennamen in Keycloak zu Rollen im Identity Service können Sie bei Bedarf mit dem Konfigurationsparameter security.oauth.provider.keycloak.roles im Identity Service anpassen.