Leapsome unterstützt SSO-Logins (Single Sign-On) über SAML 2.0. Ein SAML 2.0-Identity Provider (IDP) kann viele Formen annehmen, ein eigenständig gehosteter ADFS-Server (Active Directory Federation Services) ist eine davon. ADFS ist ein von Microsoft für Windows Server als Standard-Rolle bereitgestellter Service, der eine Webanmeldung mit vorhandenen Active Directory-Anmeldeinformationen (Credentials) möglich macht.
Wenn Du Azure Active Directory verwendest, lese stattdessen diesen Leitfaden.
Voraussetzungen
Um sich mit ADFS bei Leapsome anzumelden, benötigst Du die folgenden Komponenten:
- Eine Active Directory-Instanz, bei der alle User ein E-Mail-Adressattribut haben.
- Ein Server, auf dem Microsoft Server 2012 oder 2008 läuft
- Ein SSL-Zertifikat um sich auf Ihrer ADFS-Anmeldeseite einzuwählen sowie den dazugehörigen 'Fingerprint'.
Wenn Du diese grundlegenden Anforderungen erfüllst, müsst Du ADFS auf Deinem Server installieren. Die Konfiguration und Installation von ADFS würde den Rahmen dieses Handbuchs sprengen, wird jedoch in einem Microsoft KB-Artikel beschrieben.
Sobald die ADFS-Installation vollständig ist, notiere Dir den Wert für die 'SAML 2.0/W-Federation' URL im Abschnitt ADFS Endpoints. Wenn Du die Standardeinstellungen für die Installation ausgewählt hast, endet diese mit '/adfs/ls/'.
Schritt 1 - Hinzufügen eines "Relying Party Trust"
Zu jetzigen Zeitpunkt solltest Du bereit sein, die Verbindung zwischen ADFS und Deinem Leapsome Account einzurichten. Die Verbindung zwischen ADFS und Leapsome wird mithilfe eines Relying Party Trust (RPT) definiert.
Wähle im AD FS Management den Relying Party Trusts Ordner aus, und füge in der Seitenleiste Actions einen neuen Standard Relying Party Trust hinzu. Dadurch wird der Konfigurationsassistent für eine neuen Trust gestartet.
1. Wähle im Bildschirm Select Data Source die letzte Option: Enter Data About the Party Manually.
2. Gebe im nächsten Fenster einen Anzeigenamen ein, den Du in Zukunft erkennen wirst (z.B. 'Leapsome Login').
3. Aktiviere im nächsten Fenster den ADFS FS profile Button.
4. Behalte im nächsten Fenster die Standardeinstellungen für Zertifikate bei.
5. Aktiviere im nächsten Fenster das Kästchen Enable Support for the SAML 2.0 WebSSO protocol. Die Service-URL lautet
https://www.leapsome.com/api/users/auth/saml/ACCOUNT_ID/assert
wobei ACCOUNT_ID durch Deine Leapsome Account ID ersetzt wird. Du findest die Service-URL in Deinem Leapsome Account unter 'Einstellungen' > 'SSO' im Feld 'Reply URL'.
6. Füge im nächsten Fenster den Relying party trust identifier "https://www.leapsome.com" hinzu.
7. Überspringe den Schritt zum Einrichten der 'multi-factor authentication'.
8. Aktiviere im nächsten Fenster die Option Permit all users to access this relying party erlauben.
9. In den nächsten beiden Fenstern zeigt der Assistent eine Übersicht Deiner Einstellungen an. Verwende im letzten Fenster den Close Button, um das Fenster zu schließen und den 'Claim Rules' Editor zu öffnen.
Schritt 2 - Claim Rules erstellen
Sobald der Relying Party Trust erstellt wurde, kannst Du die Claim Rules erstellen und die RPT mit geringfügigen Änderungen aktualisieren, die nicht vom Assistenten festgelegt wurden. Standardmäßig wird der Claim Rules Editor geöffnet, sobald Du den Trust erstellt haben.
1. Um eine neue Regel (Rule) zu erstellen, klicke auf Add Rule. Erstelle eine Send LDAP Attributes as Claims-Regel.
2. Gehe im nächsten Fenster wie folgt vor, indem Du Active Directory als Attributspeicher verwendest:
3. Erstelle eine neue Regel, indem Du auf Add Rule klickst und Transform an Incoming Claim als Vorlage verwendest.
4. Gehen im nächsten Fenster wie folgt vor, indem Du Active Directory als Attributspeicher verwendest:
a) Wähle aus der LDAP Attribute Spalte 'E-Mail Addresses' aus
b) In der Outgoing Claim Type Spalte wähle 'E-Mail Address' aus
c) Klicke auf OK um die neue Regel zu speichern
d) Wiederhole diese Schritte für 'firstname', 'lastname' und 'picture', falls gewünscht.
5. Erstelle eine weitere neue Regel, indem Du auf Add Rule klickst und diesmal Transform an Incoming Claim als Vorlage auswählst.
a) Wähle 'E-mail Address' als Incoming Claim Type aus.
b) Für Outgoing Claim Type wähle 'Name ID'.
c) Für Outgoing Name ID Format wähle 'Email'.
Belassen die Regeln in der Standardeinstellung Pass through all claim values.
6. Bestätige Deine Claim Rules, indem Du abschließend auf OK klicken.
Schritt 3 - Anpassen der Trust Einstellungen
Du musst noch einige Einstellungen für den Relying Party Trust vornehmen. Um auf diese Einstellungen zuzugreifen, wähle Properties in der Seitenleiste Actions aus, während Du den RPT ausgewählt hast.
Stelle im Tab Advanced sicher, dass SHA-256 als sicherer Hash-Algorithmus angegeben ist.
Hinweis: In Deiner ADFS-Instanz sind möglicherweise Sicherheitseinstellungen vorhanden, die dafür sorgen, dass alle Federation Services Properties ausgefüllt und in den Metadaten veröffentlicht werden müssen. Erkundige Dich bei Deinem Team, ob dies in Deiner Instanz zutrifft. Wenn dies der Fall ist, aktiviere die Option Publish organization information in federation metadata.
Schritt 4 - Leapsome konfigurieren
Nach dem Einrichten von ADFS musst Du Deinen Leapsome Account für die Authentifizierung mit SAML konfigurieren.
Du verwendest Deine vollständige ADFS-Server-URL mit dem SAML-Endpoint als SSO-Login-URL.
Das Zertifikat ist ein "token signing certificate", das in Deiner ADFS-Instanz installiert ist. Du kannst das Zertifikat erhalten, indem Du den folgenden PowerShell-Befehl auf dem System mit dem installierten Zertifikat ausführst:
C:\> Get-AdfsCertificate
Fülle diese Werte aus, aktiviere die Option "Enable SAML-Based SSO" und klicke auf "Update SSO Settings". Nachdem Du fertig bist, sollte die Seite 'Einstellungen' > 'Single Sign-On' in Leapsome folgendermaßen aussehen:
Du solltest jetzt eine funktionierende ADFS-SSO-Implementierung für Leapsome haben.