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

org_admin

maAdmin, solrAdmin, mon_Administrator, tc_Administrator

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.

org_publisher

maEditor

Publisher werden immer der Rolle maEditor zugeordnet und erhalten so Redaktionsrechte in map.apps.

rolleX

rolleX

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>.

Beispiele für die Übersetzung von Gruppen in Rollen
Gruppe Rolle im Identity Service

Wald (Besitzer: user1)

Wald::user1

Wasser (Beseitzer: user2)

Wasser::user2

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:

  1. Wählen Sie Clients.

  2. Wählen Sie den Client identity-service aus der Liste der Clients aus.

  3. Wechseln Sie in der Ansicht des identity-service-Clients zum Roles Tab.

  4. Fügen Sie dort z.B. die Rolle maAdmin per 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:

  1. Wechseln Sie zur Ansicht Client scopes.

  2. Klicken Sie auf den Eintrag roles des OpenID Connect Protokolls.

  3. Wechseln Sie in der folgenden Ansicht Roles zum Tab Mappers.

  4. Klicken Sie > Add mapper > By configuration > User Client Role.

  5. Verwenden Sie nun die folgenden Einstellungen für den neuen Mapper:

    • Name: identity-service client role mapper

    • Client ID: Selektieren Sie identity-service aus 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

  6. Klicken Sie auf Save.

Zuordnung von Rollen

Um Rollen zu einer Person hinzuzufügen, gehen Sie wie folgt vor:

  1. Klicken Sie auf Users in der Navigation von Keycloak.

  2. Wählen Sie einen User aus. Die Detailseite des Users wird angezeigt.

  3. Wechseln Sie in das Tab Role mapping.

  4. Klicken Sie auf den Button Assign role und anschließend auf Client roles.

  5. Selektieren Sie aus den angezeigten Rollen diejenigen Rollen, die der Person zugewiesen werden sollen, zum Beispiel maAdmin.

  6. 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.