SingleSignOn OpenID Connect SSO / Einmalige Anmeldung
Severlizenz Comfort+ vorrausgesetzt
Die SSO-Funktion ist für die Server Comfort Plus-Lizenz verfügbar.
Diese Funktion implementiert den OpenID-Connect-Standard.
Sie aktiviert eine neue Seite innerhalb der Einstellungen in der Web-App → Single Sign-On.
Dies ist eine Einstellungsseite, die ausgefüllt werden muss, damit die SSO-Funktionalität für den jeweiligen Server funktionieren kann.
Wenn die im folgenden Teil beschriebene Konfiguration komplett abgeschlossen wurde, so sollte der Nutzung der SSO-Funktion über die Schaltfläche “Einmalige Anmeldung” nichts mehr im Wege stehen.
Sie enthält einige Abschnitte:
Im Hauptteil geht es um Informationen zum 3rd-Party-SSO-Server, die der Kunde selbst bereitstellen muss. Es erhält den Standard für SSO-Funktionsdatenpunkte:
1.1. Client-ID (String)
1.2. Client-Geheimnis (String)
1.3. Authentifizierungsendpunkt (URL)
1.4. Token-Endpunkt (URL)
1.5. Userinfo-Endpunkt (URL)
1.6. Abmeldeendpunkt (URL)
Alle oben genannten Felder sind Pflichtfelder, damit das SSO ordnungsgemäß funktioniert.Weiterleitungs-URIs zwei Links einfügen: https://XXXX.remote-master.cloud/auth/sso_callback/ https:/ /XXXX.remote-master.cloud/auth/sso_logout_confirm/
set the allowed URL in their SSO server - in this case:
https://XXX.remote-master.cloud/auth/sso_callback/
https://XXX.remote-master.cloud/auth/sso_logout_confirm/
Der Abschnitt „Datenzuordnung“ ist dafür verantwortlich, die Felder aus den JSON-Daten, die wir vom Userinfo-Endpunkt erhalten, unserer internen Datenbank zuzuordnen. Es gibt auch einen Standardwert, der für das Unternehmen ausgewählt werden kann, zu dem Benutzer gehören, wenn sie sich zum ersten Mal anmelden. Dies ist ein Pflichtfeld. Das andere erforderliche Feld ist der Benutzername.
Im Folgenden gebe ich ein Beispiel für JSON-Daten vom Userinfo-Endpunkt und wie diese unserer Datenbank zugeordnet werden können.
{"sub":"3158a60f-d090-428a-af66-a9bd970542a5","email_verified":false,"address":{"zip":"4000"},"company_id":1,"permissions":"ee0000000000000fffffffffffffffff","name":"User Name","preferred_username":"username","given_name":"Name","family_name":"family name"}
Um in diesem Fall den Benutzernamen korrekt zuzuordnen, geben wir im Feld „Benutzername“ den Wert „bevorzugter_Benutzername“ ein. Wenn sich der Benutzer zum ersten Mal mit diesen Anmeldeinformationen anmeldet, übernimmt der Server den Wert „savs“ aus der Eigenschaft „preferred_username“ der JSON-Struktur und fügt ihn in die Spalte „Benutzername“ in der Benutzertabelle unserer Datenbank ein.
Es gibt Situationen wie die Zip-Eigenschaft oben, in denen wir Unterobjekte innerhalb des JSON haben, das wir vom SSO-Server erhalten. In diesem Fall können wir den Pfad zur Eigenschaft durch „.“ getrennt ausfüllen. (Punkte). Im obigen Beispiel bedeutet dies, dass wir zum Zuordnen der Postleitzahl vom Userinfo-Endpunkt zu unserer Datenbank „address.zip“ in das Feld „Postleitzahl“ eingeben müssen.
Der Abschnitt „Berechtigungen“ kann so eingerichtet werden, dass für jeden Benutzer, der sich zum ersten Mal mit Hilfe von SSO anmeldet, Standardbenutzerberechtigungen festgelegt werden. Diese Berechtigungen können später vom Administrator des Servers nach eigenem Ermessen aktualisiert werden. Die Idee dahinter ist, dass der Kunde auf diese Weise nicht für jeden seiner SSO-Benutzer ein spezielles hexadezimal formatiertes Berechtigungsfeld festlegen muss, obwohl er dies trotzdem tun kann.