Siehe auch Authentifizierung, Benutzer, Site-Konfigurationen
Dieser Artikel beschreibt die SSO-Systemeinstellungen der Lobster Data Platform. Er erklärt den Anmeldeablauf per externem Identitätsanbieter und zeigt, wie Sie SSO-Konfigurationen anlegen und testen.
Hintergrund
SSO (Single Sign-On) ersetzt die manuelle Eingabe von Zugangsdaten durch eine bestehende Anmeldung bei einem „Externen Identitätsanbieter". Ist noch keine solche Anmeldung vorhanden, öffnet die Lobster Data Platform ein eigenes Browserfenster zur Identifizierung. Im Login-Dialog klicken Sie auf den Button des gewünschten „Externen Identitätsanbieters". Eine manuelle Eingabe von Zugangsdaten entfällt damit. Ist die übermittelte Identität mit einem aktiven Benutzerkonto verknüpft, meldet das System Sie mit diesem Konto an. |
| Was passiert beim Klick auf ( Microsoft )?
|
WICHTIG Falls mehrere Benutzerkonten für die Lobster Data Platform mit der passenden providerAlias/userterm-Kombination existieren, verwendet das System ausschließlich den ersten Treffer. Das gilt auch dann, wenn dieses Konto nicht aktiv ist.
HINWEIS Benutzer, denen unterschiedliche Firmen/Mandanten und/oder Rollen zugeordnet sind, können und müssen im Verlauf der Anmeldung eine Auswahl aus den den verfügbaren Alternativen treffen. Wenn in diesem zweiten Schritt der Anmeldung der Button „Abbrechen" gewählt wird, erscheint wieder der oben abgebildete Login-Dialog. Aus technischen Gründen befüllt das System das Feld „Benutzername" mit der zuletzt verwendeten „Benutzerkennung" (userterm). Diese muss absolut nicht mit dem „Benutzernamen" (username) des korrespondierenden Benutzerkontos für die Lobster Data Platform übereinstimmen. Nur dann hat es aber einen Sinn, nach dem Abbruch ausgehend von der Vorbelegung ein konventionelles Login mit dem ggf. bekannten Passwort für dieses Konto auszuführen.
Beispiel
Für einen via Microsoft-Azure über seine geschäftliche E-Mail-Adresse (jack.tonic@doma.in) identifizierten Benutzer (nennen wir ihn Jack) ist auf der Lobster Data Platform ein Benutzerkonto mit dem „Benutzernamen" jtonic eingerichtet. Unter „Externe Benutzeranmeldeinformationen" ist ein Verweis auf die „Benutzerkennung" (jack.tonic@doma.in) vermerkt. Eine SSO-Anmeldung mit Jacks azure-„Benutzerkennung" (userterm) jack.tonic@doma.in bezieht die Lobster Data Platform dann auf das Konto mit dem „Benutzernamen" (username) jtonic.
Das Listenfeld „Rolle" (roles) in Jacks Benutzerkonto sieht zwei unterschiedliche Rollen zur Auswahl vor. Bei jedem SSO-Login wird Jack aufgefordert, die Rolle der Session auszuwählen. Er kann diese Auswahl per „Abbrechen" verweigern. Dann gilt das Login insgesamt als abgebrochen.
Danach erscheint wieder der Login-Dialog. Das Feld „Benutzername" ist mit jack.tonic@doma.in vorbelegt. Der tatsächliche „Benutzername" (username) des Kontos lautet aber jtonic.
Eine erfolgreiche SSO-Anmeldung setzt folgende Punkte voraus:
Im Ausführungskontext des Logins muss eine Anmeldung beim gewünschten externen Identitätsanbieter etabliert sein oder werden.
In einem aktiven Benutzerkonto für die Lobster Data Platform muss eine gültige Referenz auf das Anbieter-Konto hinterlegt sein (s. Benutzer, „Externe Benutzeranmeldeinformationen").
Geeignete „SSO-Systemeinstellungen" für die Kommunikation mit dem „SSO-Anbieter" müssen eingerichtet, aktiviert und ggf. für den konkreten Anmeldekontext (s. Site-Konfigurationen) unterstützt sein.
Die folgende Dokumentation betrifft ausschließlich den letzten Punkt dieser Liste.
Zugriff auf „SSO-Systemeinstellungen"
Die View Authentifizierung (s. Basis-Einstellungen) sieht einen eigenen Tab mit Einstellungen für SSO (Einmalige Anmeldung) vor.
Der SSO (Einmalige Anmeldung)-Tab beinhaltet eine Übersicht, die alle „SSO-Systemeinstellungen" (SSOSystemPreferences) auflistet, für die im Kontext der aktuellen Sitzung Lesezugriff besteht.
Sofern für die Rolle der Session Besitzereinschränkungen zu berücksichtigen sind (s. Rollen), erscheinen nur „SSO-Systemeinstellungen" (SSOSystemPreferences) in der Liste, die sich im Besitz der Firma der Session befinden oder für die Firmenfreigaben greifen.
Weiterführende Berechtigungen für aufgelistete „SSO-Systemeinstellungen" (SSOSystemPreferences) — z. B. „Ändern", „Erstellen", „Löschen" — müssen für die Rolle der Session gewährt und für die jeweilige Instanz aufgrund der Besitzverhältnisse und ggf. Firmenfreigaben anwendbar sein, damit die zugehörigen Ribbon Buttons sichtbar sind oder abhängig von der Auswahl in der Liste aktiv erscheinen.
Mit ausreichenden Berechtigungen für einen per Einfachauswahl oder Doppelklick identifizierten Listeneintrag kann auf die zugehörigen Konfigurationsdetails in einer separaten View zugegriffen werden. Bei dieser handelt es sich um eine Erfassungsmaske (s. Erfassungsmasken), die nachfolgend auch als Detailansicht bezeichnet wird.
Konfiguration
Die systemseitig vordefinierte Detailansicht für „SSO-Systemeinstellungen" wird unter anderem benötigt, um über den Ribbon Button Neu (in der Übersicht oder der Detailansicht) eine neue „SSO-Systemeinstellungen"-Instanz anzulegen. Dabei muss initial über ein Auswahlfeld/Combobox der Typ für den SSO-Anbieter (ssoType) festgelegt werden, damit weitere ggf. spezifisch ausgeprägte Formularelemente erscheinen.
Ändern Sie den SSO-Anbieter, nachdem Sie bereits Formularelemente ausgefüllt haben, gehen alle eingegebenen Daten verloren. Das gilt auch dann, wenn der neue Anbieter dieselben Eigenschaften unterstützt.
Hintergrund zum Datenmodell
Technisch weist die Auswahl für den SSO-Anbieter dem preferences-Feld der Klasse „SSO-Systemeinstellungen" (SSOSystemPreferences) ein Datenobjekt mit einer spezifischen Klasse ({Google|Azure|Auth0|Facebook|Amazon|Frontegg|Custom}SSOConfiguration) zu. Die übergeordnete Klasse „SSO (Einmalige Anmeldung)" (BaseSSOConfiguration) stellt die gemeinsamen Eigenschaften bereit. Die spezifischen Klassen können zusätzliche Eigenschaften enthalten.
Tatsächlich werden für alle SSO-Anbieter weitgehend dieselben Eigenschaften angeboten, wie der folgenden Tabelle zu entnehmen ist. Die wenigen spezifischen Eigenschaften sind in der Tabelle grau schattiert.
Betreff | Name | Datenfeld | Datentyp | Beschreibung |
|---|---|---|---|---|
Allgemeine Eigenschaften | ||||
Alias |
| String | Systemweit eindeutige Kennung, die dem Benutzer beim Login direkt angezeigt wird, sofern keine Lokalisierung (s. Sprachverwaltung) definiert ist. | |
(Status) HINWEIS In der Erfassungsmaske zeigt die zugehörige Checkbox ihren Wert („aktiv", „nicht aktiv") anstelle einer Beschriftung an. |
| Boolean | Kennzeichen, das gesetzt ( | |
Client-ID |
| String | Öffentliche Kennung für Ihre Anwendung, die vom Identitätsanbieter (z. B. Google, Amazon) ausgestellt wurde. | |
Client-Secret |
| String | Privater Schlüssel zur Authentifizierung Ihrer Anwendung beim Identitätsanbieter. WICHTIG Halten Sie diesen vertraulich! | |
Autorisierungs-URL |
| String | URL, zu der die Lobster Data Platform Sie weiterleitet, damit Sie sich beim Identitätsanbieter anmelden. | |
Callback-URL |
| String | URL, zu der der Identitätsanbieter Sie nach erfolgreicher Anmeldung weiterleitet. HINWEIS Der Textwert wird ausgehend vom Alias automatisch für das aktuelle System zugewiesen. Das zugehörige Textfeld ist deshalb schreibgeschützt. Der rechts davon bereitgestellte Button überträgt den berechneten Wert in die Zwischenablage des Clients. | |
Kommentar |
| String | Freitext für Kommentare zur Konfiguration. | |
└► nur Azure SSO | Mandant |
| String | Spezifische Mandanten- oder Organisations-ID innerhalb des Identitätsanbieters (wird in Mehr-Mandanten-Setups wie Azure AD verwendet). |
└► nur Auth0 SSO und Frontegg SSO | Domain |
| String | Erwartete Domäne der E-Mail oder Organisation des Benutzers (wird verwendet, um den Anmeldezugriff zu leiten oder einzuschränken). |
Erweiterte Einstellungen | ||||
Token-URL |
| String | Endpunkt zum Austausch des Autorisierungscodes gegen ein Zugriffstoken. | |
Benutzerinfo-URL |
| String | Endpunkt zum Abrufen von Benutzerprofilinformationen (wie E-Mail und Name) nach der Anmeldung. | |
Scope |
| String | Schlüsselwörter für angeforderte Berechtigungen (z. B. | |
State-Feld |
| String | Parameter zur Aufrechterhaltung des Zustands zwischen Anfrage und Rückruf. Hilft, CSRF-Angriffe zu verhindern. | |
Feld-Zuordnungen |
| String | Zeichenfolge, die eine Zuordnung für Identitätsanbieter-Felder (wie E-Mail oder Name) zu den Benutzerattributen Ihrer Anwendung definiert. | |
Zusätzliche Autorisierungsparameter |
| String | Optionale Abfrageparameter für die Autorisierungsanfrage (z. B. | |
Symbol |
| String | Referenz für das Symbol, das zusammen mit dem Alias im Login-Dialog angezeigt wird (s. a. Arbeiten mit Bildressourcen (Icons)). HINWEIS Falls kein Symbol zugewiesen wird, erscheint als Standard ein „Schlüssel"-Symbol. | |
Lokalisierung (Alias) | n/a | String | Lokalisierungswert für den Alias in der jeweiligen Sprache (Bundle | |
WICHTIG Platzhaltertexte beschreiben Standardwerte. Für viele der gemeinsam genutzten Eigenschaften zeigt das leere Textfeld einen Platzhalter an, der je SSO-Anbieter (ssoType) spezifisch ausgeprägt sein kann. Beispiel: Für den SSO-Anbieter „Azure SSO" lautet der Platzhalter für die Autorisierungs-URL (authorizationUrl): https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token. Dieser Platzhalter beschreibt den Standardwert, der zur Laufzeit gilt, solange kein eigener Wert eingetragen ist. Der als Platzhalter angezeigte Text kann eine Referenz auf ein Datenfeld enthalten (z. B. {tenant}, {domain}). Dann verwendet das System zur Laufzeit den Wert der betreffenden Eigenschaft. Das gilt nur für Standardwerte. In benutzerdefinierten Textwerten sind solche Referenzen nicht vorgesehen. Hartcodierte Standardwerte werden beim Speichern nicht in der Datenbank persistiert. Betreffende Felder bleiben leer. Das Datenobjekt liefert bei einem Lesezugriff auf eine unbestimmte Eigenschaft nicht den effektiv wirksamen Standardwert.
Spezifische Menüfunktionen
Sobald innerhalb der „Authentifizierung"-View der Tab „SSO (Einmalige Anmeldung)" ausgewählt ist, erscheinen die im Kontext anwendbaren Ribbon Buttons. Neben den generischen Funktionen sind auch zwei spezifische Ribbon Buttons verfügbar:
Ribbon Button | Kontext | Funktionsbeschreibung |
|---|---|---|
Test SSO |
| Übersicht und Erfassungsmaske. Führt einen Test für die ausgewählte „SSO-Systemeinstellungen"-Instanz aus. Das System zeigt eine Erfolgs- oder Fehler-Notification an. Für den Test wird vorübergehend ein eigenes Browserfenster geöffnet. Die Eigenschaft „Status" ( |
De-/Aktivieren |
| Übersicht. Invertiert den Booleschen Wert der Eigenschaft „Status" ( |
Verwandte Themen
Authentifizierung: Konfigurationsseite für SSO-Systemeinstellungen und weitere Authentifizierungsoptionen
Benutzer: Verwaltung von Benutzerkonten, inkl. „Externe Benutzeranmeldeinformationen"
Site-Konfigurationen: steuert, welche SSO-Anbieter im Login-Dialog eines Anmeldekontexts erscheinen
Azure SSO konfigurieren: Schritt-für-Schritt-Beispiel: vollständige Einrichtung von Microsoft Azure als SSO-Anbieter
Benutzerverwaltung mit SSO: Optionen zur Benutzerverwaltung beim SSO-Betrieb
Registrierter Login: Ereignis, das bei erfolgreicher SSO-Anmeldung ausgelöst wird
Unregistrierter Login: Ereignis, das ausgelöst wird, wenn keine Benutzerkennung für die SSO-Identität hinterlegt ist
