Grundlagen des Single Sign On

Updated durch Victor Jespersen

Vor der Einrichtung von SSO in Quinyx ist es wichtig, die Grundlagen zu durchlaufen, um die Einrichtung zu vereinfachen. SSO steht für Single Sign-On und wird in Quinyx verwendet, um die Authentifizierung von Benutzern von den integrierten Methoden wie z.B. Benutzername und Passwort auf eine kundenkontrollierte Methode umzustellen.

SSO bietet zahlreiche Verbesserungen wie Sicherheit, Compliance und Einfachheit gegenüber Benutzername und Passwort - aber am wichtigsten ist, dass der Kunde die Kontrolle über den Login und die Authentifizierung bei Quinyx hat.

Technologien und Protokolle

Im Laufe der Jahre wurden verschiedene Protokolle und Standards entwickelt, um SSO zwischen verschiedenen Systemen zu vereinfachen. Zwei gängige Protokolle, die von Quinyx unterstützt werden, sind SAML 2.0 für das Web und OpenID Connect (OAuth2) für mobile Apps.

Im Laufe der Zeit könnten von Quinyx weitere Protokolle unterstützt werden.

Die Protokolle dienen dazu, die Implementierung und Kompatibilität zwischen verschiedenen Systemen zu vereinfachen, sodass jeder Anbieter, in diesem Fall Quinyx, keine spezifische Unterstützung für jeden Anbieter (Azure ADFS, Onelogin, Okta, Google, etc.) entwickeln muss - wir sprechen alle eine gemeinsame Sprache. Gemeinsam bei allen Protokollen ist, dass sie eine Liste von Einstellungen wie Zertifikate, URLs und potenzielle Geheimnisse haben, die geteilt werden müssen, um das Vertrauen zwischen den beiden Systemen herzustellen.

Während die URLs zwischen verschiedenen Anbietern unterschiedlich aussehen können, bieten sie alle dieselbe Funktionalität, da sie mit dem angegebenen Protokoll kompatibel sind.

Grundlegende Schritte für Quinyx SSO

Die Konfiguration und Verwendung von SSO kann in verschiedene Schritte unterteilt werden:

  1. Technisches Vertrauen zwischen zwei Systemen
  2. Datenzuordnung
  3. Anmeldung bei Quinyx für Mitarbeiter über SSO
SSO Benutzer werden durch die Quinyx-Passwortrücksetzung nicht gesperrt, d.h. es gibt keine Abhängigkeit, die SSO Benutzer daran hindert sich anzumelden wenn der Passwortrücksetzungsprozess in Quinyx aktiviert wurde.

Technisches Vertrauen zwischen zwei Systemen

Eine Voraussetzung für die Funktionalität von SSO zwischen Quinyx und der IT-Umgebung des Kunden besteht darin, das technische Vertrauen zwischen den beiden Parteien herzustellen. Dies wird einmalig durchgeführt und oft von der für das System verantwortlichen IT-Abteilung des Kunden durchgeführt. Die Quinyx-Benutzeroberfläche bietet eine Self-Service-Möglichkeit, um alle erforderlichen Einstellungen zur Herstellung des Vertrauens zwischen Quinyx und dem vom Kunden gewählten System einzugeben.

Hier werden alle URLs, Geheimnisse und Zertifikate verwendet, um dieses Vertrauen zu konfigurieren und herzustellen. Um diesen Prozess in SAML 2.0 zu vereinfachen, werden alle erforderlichen Informationen in einer "Metadaten"-Datei gespeichert, die zwischen den Parteien geteilt wird. Diese Datei minimiert das Risiko von Tippfehlern und Fehlkonfigurationen, da sie alle Informationen enthält, die zur Konfiguration des Vertrauens benötigt werden. OpenID Connect verfügt über ähnliche Anweisungen namens "Well Known URIs", die einen Weblink enthalten, der alle für die Einrichtung von OpenID benötigten URIs enthält (endet oft mit /.well-known/openid-configuration).

Datenzuordnung

Wenn das technische Vertrauen hergestellt ist, kommunizieren die beiden Systeme während der Anmeldung miteinander. Es bleibt jedoch noch eine Sache zu konfigurieren, nämlich die Datenzuordnung. Das Kundensystem, von nun an als IDP (IDentity Provider) bezeichnet, stellt eine Datenbank der Mitarbeiter zur Verfügung, die sich bei Quinyx anmelden müssen. Der IDP kann aus vielen verschiedenen internen Systemen beim Kunden mit hoher Komplexität bestehen. Oder es kann sich um ein einzelnes System in seiner einfachsten Form handeln, wie z.B. eine Tabelle, die alle Mitarbeiterinformationen enthält.

Wenn ein Mitarbeiter SSO verwendet, um sich bei Quinyx anzumelden, werden verschiedene Benutzereigenschaften aus der IDP-Datenbank als Teil des verwendeten Protokolls an Quinyx gesendet.

Während Protokolle, die zur Herstellung von Vertrauen verwendet werden, bestimmte spezifische Details und Empfehlungen haben, legen sie nicht genau fest, was alle Felder enthalten sollten. Dies erfordert eine Konfiguration in der Datenzuordnung. Viele Anbieter von OpenID Connect haben einige gemeinsame Ansprüche, die zum Beispiel eine E-Mail-Adresse in einem bestimmten Anspruch (Feld) enthalten. Ein bestimmter Anspruch passt möglicherweise nicht zu jedem Quinyx-Kunden, daher erlauben wir dem Kunden, zu wählen, welchen er verwenden möchte.

Konfigurieren der Datenzuordnung

Das Ziel der Datenzuordnung besteht darin, die Informationen über einen Mitarbeiter in der Kunden-IDP-Datenbank mit den Informationen über den Mitarbeiter in Quinyx zu verbinden, damit Quinyx erkennen kann, wer sich einloggt.

Dazu müssen wir ein Feld/Eigenschaft aus Quinyx und ein Feld/Eigenschaft in der Kunden-IDP-Datenbank auswählen, die einander zugeordnet werden, um diesen Benutzer eindeutig zu identifizieren. Die ausgewählten Felder werden auf der Konfigurationsseite in Quinyx für SSO eingegeben.

Weitere Informationen zum SSO finden Sie hier.

Beispieldaten

Beispieldaten in Quinyx (links) und auf der Kundenseite (rechts).

Konfiguration mit E-Mail und Benutzername

Erster Versuch der Datenzuordnung; das Feld E-Mail wird aus Quinyx ausgewählt und der Benutzername aus den Kundendaten.

Die Anmeldung schlägt fehl, da die Informationen auf beiden Seiten nicht genau übereinstimmen.

Konfiguration mit E-Mail und UPN

Zweiter Versuch der Datenzuordnung; Neukonfiguration zur Verwendung der E-Mail von Quinyx und des UPN aus den Kundendaten. Dies führt zu einem anderen Ergebnis.

Die Anmeldung ist jetzt erfolgreich, da Quinyx den Benutzer eindeutig als den richtigen John Doe des Kunden identifiziert.

Wie man entscheidet, welche Daten verwendet werden sollen

Da das Protokoll nicht genau angibt, welche Daten während des SSO verwendet werden sollen, wird empfohlen, die in beiden Systemen verfügbaren Daten zu identifizieren. Finden Sie dann ein geeignetes Feld, um Benutzer zuzuordnen, bevor Sie SSO einrichten. Da Kunden-IDPs oft hoch konfigurierbar sind, ist es möglich, welche Daten in welchen Feldern an Quinyx gesendet werden, zu ändern, um den Datenzuordnungsprozess zu unterstützen - der wichtige Teil besteht darin, zu entscheiden, welches Feld verwendet werden soll und sicherzustellen, dass die Daten konsistent sind.

Wenn keine Daten gefunden werden, um jeden Benutzer zuzuordnen, müssen neue Informationen in einem der Systeme erstellt werden. Dies kann jede Art von eindeutiger Nummer oder Zeichenfolge sein, die für jeden Mitarbeiter eindeutig ist. Die Verwendung von Integrationen zu Quinyx und die Aktualisierung jedes Mitarbeiters mit Automatisierung vereinfacht diesen Prozess, um die manuelle Konfiguration der erforderlichen Daten für die Anmeldung zu vermeiden.


Wie haben wir das gemacht?