Keycloak

Mithilfe des con terra Technologies Identity Service kann map.apps die Authentifizierung von Personen an Keycloak delegieren. Dies bedeutet, dass diese sich mit ihrem Keycloak-Account bei map.apps anmelden können.

Durch eine Verbindung mit Keycloak entstehen folgende Möglichkeiten:

  • Vergabe von Rollen für die Nutzung des map.apps Managers

  • Absicherung von Apps

  • Absicherung von Werkzeugen

Durch eine Verbindung mit Keycloak kommt es zu folgenden Einschränkungen:

  • Mit der Funktion "Export für native Apps" exportierte Apps unterstützen keine Authentifizierung. Apps mit anonymem Zugriff funktionieren weiterhin.

Verbindung zwischen map.apps und Keycloak herstellen

Die Verbindung von map.apps mit Keycloak erfolgt in mehreren Schritten.

Schritt 1: Identity Service installieren und konfigurieren

In diesem Schritt installieren und konfigurieren Sie den Identity Service als separate Web Anwendung. Folgen Sie dazu diesen Schritten aus der Dokumentation des Identity Service:

  1. Installieren Sie den Identity Service.

  2. Verbinden Sie den Identity Service mit Keycloak.

  3. Wenn map.apps und Identity Service nicht über denselben Hostnamen verfügbar gemacht werden, passen Sie die Konfiguration gemäß Dokumentation für den Betrieb von verschiedenen Hostnamen unter einer Domäne an.

  4. Konfigurieren Sie Dienste, die mit einem Zugriffstoken angefragt werden sollen, als vertrauenswürdige Dienste im Identity Service.

Schritt 2: map.apps konfigurieren

Um die Delegation der Anmeldung zu aktivieren, setzen Sie die folgenden Parameter in der globalen Konfiguration:

Beispiel-Konfiguration
security.mode=IDENTITY
security.login.base=https://www.example.com/identity
security.mode

Der Wert IDENTITY legt fest, dass die Authentifizierung über den Identity Service delegiert werden soll.

security.login.base

Basis URL des Identity Service.

App-Übersicht nur für angemeldete Personen erlauben

Um nur Personen mit einer gültigen Anmeldung den Zugriff auf die map.apps App-Übersicht (App Overview) zu erlauben, setzen Sie folgende Konfiguration:

# this is used to specify the protected resource paths (which require authentication before use)
# add '/,/*.html' to protect the index.html
security.application.protectedResources=/,/*.html

Schritt 3: Rollen-Zuordnung anpassen

map.apps gewährt Zugriff auf geschützte Ressourcen abhängig von Rollen, denen eine Personen zugeordnet ist. Auf den map.apps Manager können zum Beispiel nur Personen zugreifen, die der Rolle maAdmin zugeordnet sind. Zusätzlich können Sie die Sichtbarkeit von Apps oder Tools von bestimmten Rollen abhängig machen.

Die Zuordnung von Rollen zu Personen nimmt der Identity Service auf Basis der Rollen-Zuordnung in Keycloak vor. In der Dokumentation zur Rollen-Zuordnung im Identity Service finden Sie weitere Informationen darüber, wie der Identity Service Rollen aus Keycloak in Rollen für map.apps übersetzt.

Überprüfen Sie die Rollen-Zuordnung im Identity Service bzw. Keycloak und passen Sie diese gegebenenfalls so an, dass mindestens eine Person die Rolle maAdmin besitzt. So stellen Sie sicher, dass Sie sich mit dieser Person im map.apps Manager anmelden können.

Apps konfigurieren

Um Apps für bestimmte Rollen freizugeben, wählen Sie diese Rollen in den Einstellungen im map.apps Manager aus.

Damit Profilinformationen der angemeldeten Person in einer App angezeigt werden, fügen Sie der App das Bundle authentication hinzu. Es stellt außerdem eine Funktion bereit, die es der angemeldeten Person erlaubt sich abzumelden.