PORTAL und PPS Knowledge Base

OAuth-Login über Drittdienste

Das OAuth-Login über Drittdienste ermöglicht es, die Benutzerdatenbank eines Drittdienstes zu nutzen, um Benutzer:innen im PEIQ PORTAL zu authentifizieren und ggf. zu autorisieren. In diesem Fall ist das PORTAL der OAuth-Client, während der Drittdienst als OAuth-Server dient.

Funktionalitäten des OAuth-Login über Drittdienste

  • Authentifizierung im PORTAL über ein externes System

  • Abgleich der benutzerbezogenen Zugangsdaten mit den hinterlegten Daten im externen System

Inhaltsverzeichnis

Workflows

Nach erfolgter Autorisierung seitens der Benutzer:innen im Drittdienst, verwendet das PEIQ PORTAL Name und Mailadresse der Drittdienst-Datenbank, um ein lokales (= in der Datenbank des PORTALs gespeichertes) Benutzer:innen-Konto zu erstellen. Alle vom Drittdienst übertragenen Daten können in der PEIQ-Anwendung bearbeitet werden. Es werden in der Regel vom PEIQ PORTAL aktiv keine Daten an den Drittdienst zurückübertragen.

Grundsätzlich können OAuth-Login mit Drittdiensten auf zwei Weisen im PORTAL implementiert werden:

  1. Einfacher OAuth-2.0-Login (Standard)
  2. Pseudo-SSO-Workflow: Prüfung & Aktualisierung der Daten des bzw. der PEIQ-Benutzer:in anhand der Datenbank des Drittdienstes bei jedem Login

Registrierung / Erstmaliger Login mit einem Drittdienst im PORTAL

  1. Einfacher OAuth-2.0-Login (Standard)

In der Regel wird auf der Registrieren-Seite ein Button "Mit [Drittdienst] anmelden" angeboten. Mit Klick auf den Button wird die Registrierung gestartet.

  1. Pseudo-SSO-Workflow

Das PORTAL-Formular zur Registrierung wird hier in der Regel ausgeblendet und nicht verlinkt. Stattdessen wird der bzw. die Benutzer:in auf die Registrierungsmöglichkeit des Drittdienstes verwiesen.

Beim erstmaligen Anmelden (= Registrierung) über den Drittdienst wird nach Autorisierung durch den oder die Benutzer:in im Drittdienst ein Token an das PORTAL übermittelt, welches mindestens diese Daten enthält:

  • Name

  • Vorname

  • E-Mail-Adresse

  • Fremd-ID im Drittdienst

Je nach Drittdienst werden weitere Daten über das Token übertragen und können ggf. zur Erstellung des PORTAL-Benutzers bzw. der PORTAL-Benutzerin genutzt werden. Es ist ebenfalls möglich, entsprechende Mappings (z. B. Anrede im Drittdienst auf Geschlecht im PORTAL) zu hinterlegen.

Prüf-Workflows

Das PORTAL prüft dann, ob ein:e entsprechende:r Benutzer:in bereits im PORTAL angelegt wurde. Dabei werden folgende Prüfschritte durchlaufen:

  1. Einfacher OAuth-2.0-Login (Standard)
  1. Es wird überprüft, ob bereits ein:e Benutzer:in mit der entsprechenden Fremd-ID existiert. Falls ja, wird der oder die Benutzer:in eingeloggt.

  2. Es wird überprüft, ob bereits ein:e Benutzer:in mit der entsprechenden E-Mail-Adresse existiert. Falls ja, wird der oder die Benutzer:in eingeloggt und über die Fremd-ID mit dem Drittdienst-Konto entsprechend verknüpft.

  3. Es wird ein:e lokale:r Benutzer:in mit Profilseite im PORTAL angelegt. Hierfür werden die Daten aus dem Token verwendet.

Bei dieser Implementierung sind die Daten des Benutzers bzw. der Benutzerin im PORTAL unabhängig von den Angaben im Drittdienst. Die übertragenen Benutzer:innendaten (außer der ID) können im PEIQ PORTAL nachträglich geändert werden.

  1. Pseudo-SSO-Workflow
  1. Es wird überprüft, ob bereits ein:e Benutzer:in mit der entsprechenden Fremd-ID existiert. Falls ja, wird der oder die Benutzer:in eingeloggt und seine/ihre PORTAL-Daten mit den Daten aus dem Token überschrieben.

  2. Es wird überprüft, ob bereits ein:e Benutzer:in mit der entsprechenden E-Mail-Adresse existiert. Falls ja, wird der oder die Benutzer:in eingeloggt, seine/ihre PORTAL-Daten mit den Daten aus dem Token überschrieben und über die Fremd-ID mit dem Drittdienst-Konto entsprechend verknüpft.

  3. Es wird ein:e lokale:r Benutzer:in mit Profilseite im PORTAL angelegt. Hierfür werden die Daten aus dem Token verwendet.

Der Drittdienst-Account und der PEIQ-Account sind über die Fremd-ID miteinander verknüpft.

Hinweis bzgl. Rechtsdokumenten

Sofern Rechtsdokumente im PORTAL aktiviert sind, können Benutzer:innen erst den Button "Mit [Drittdienst] anmelden" betätigen, nachdem sie die erforderlichen Rechtsdokumente angehakt haben.

Login

  1. Einfacher OAuth-2.0-Login (Standard)

In der Regel wird auf der Login-Seite ein Button "Mit [Drittdienst] anmelden" angeboten. Mit Klick auf den Button wird der Login gestartet.

  1. Pseudo-SSO-Workflow

Das PORTAL-Formular zum Login im PORTAL wird hier in der Regel ausgeblendet und nicht verlinkt. Stattdessen wird der oder die Benutzer:in direkt auf den Login über den Drittdienst verwiesen.

  • Nach erfolgreicher Registrierung kann sich der oder die Benutzer:in mit dem [Drittdienst] einloggen.

  • Klickt der oder die Benutzer:in auf den Login-Link bzw. Button und ist noch nicht im Drittdienst angemeldet, wird diese:r zuerst auf die Drittdienst-Login-Seite weitergeleitet, um dort Benutzername und Passwort einzugeben.

  • Nach erfolgreicher Authentifizierung des bzw. der Benutzer:in im Drittdienst erhält das PORTAL wiederum ein entsprechendes Token (siehe Registrierung).

  • Auch beim Login mit dem Drittdienst laufen in der Regel die unter Registrierung beschriebenen Prüf-Workflows.

Passwort vergessen

  1. Einfacher OAuth-2.0-Login (Standard)

Der oder die Benutzer:in kann sich zusätzlich (über die Passwort vergessen-Funktion) ein weiteres Passwort in PEIQ vergeben. Damit steht ihm oder ihr ebenfalls der PORTAL-Login zur Verfügung.

  1. Pseudo-SSO-Workflow

Die Passwort-vergessen-Funktion wird bei diesem Workflow in der Regel deaktiviert.

Account-Einstellungen: Account (Persönliche Daten)

  1. Einfacher OAuth-2.0-Login (Standard)

Bei dieser Implementierung sind die Daten des bzw. der Benutzer:in im PORTAL unabhängig von seinen/ihren Angaben im Drittdienst. Die übertragenen Benutzerdaten (außer der ID) können im PEIQ PORTAL nachträglich geändert werden.

  1. Pseudo-SSO-Workflow

Es empfiehlt sich bei dieser Implementierung, die Bearbeitung der Benutzerdaten über die Account-Einstellungen im PEIQ PORTAL zu sperren.

Mehr dazu unter: Account-Einstellungen | [hardBreak]Konfigurationsmöglichkeit bei SSO

Account-Einstellungen: Verknüpfte Accounts

  1. Einfacher OAuth-2.0-Login (Standard)

Mehr dazu unter: Account-Einstellungen | Verknüpfte Accounts OPTIONAL

  1. Pseudo-SSO-Workflow

Es empfiehlt sich bei dieser Implementierung, den Reiter Verknüpfte Accounts auszublenden.

 

Verwandte Seiten

 

Nur für PEIQ-Mitarbeiter:innen
https://peiq.atlassian.net/wiki/x/84A1Jw