ADFS/Azure Anbindung mit SSO
In diesem Artikel wird beschrieben, wie mittels Microsoft ADFS (Azure Cloud oder ADFS-Server) eine Single Sign-On (SSO) Anmeldung für KenCube realisiert werden kann. Die Anbindung kann entweder über AZURE Cloud oder den ADFS-Server des Auftraggebers erfolgen. Der ADFS-Server muss dazu zumindest Version 2016 sein.
Anmerkung: ADFS (auch AD FS, „Active Directory Federation Services“) ist eine Software von Microsoft, mit deren Hilfe sich Benutzer*innen per Single Sign-On an unterschiedlichen Services und Plattformen anmelden können. ADFS nutzt hierfür die Benutzerverwaltung des Active Directories (AD).
1. Active Directory Synchronisation
Für die Authentifizierung mittels ADFS-Server muss KenCube mit dem Active Directory des Auftraggebers (z.B. einmal täglich) synchronisiert werden.
Dazu muss im Vorfeld abgeklärt werden, welche Felder in der Schnittstellendatei für die ADFS-Anmeldung benötigt werden und wie der Primärschlüssel für das Matching der Anmeldung definiert ist („unique_name“ = zumeist die E-Mailadresse der Benutzer*innen).
Anmerkung: Zumeist werden über die Schnittstelle noch weitere Daten übergeben, die dann – bei Verwendung des Organisationsbereichs – für die automatisierte Anlage und Befüllung der Personenkarten in KenCube genutzt werden können. Siehe dazu auch: Firmenstruktur & Organigramm | KenCube Berechtigungskonzept
Variante 1: Synchronisation via Dateiaustausch
Eine einfache Möglichkeit dazu ist die Übertragung einer aus dem Active Directory exportierten CSV-Datei (UTF-8, strichpunktgetrennt, optimaler Weise mit Header-Zeile) mit den Personendaten, die für die Authentifizierung in KenCube benötigten werden. Für den sicheren Transfer der Synchronisationsdatei(en) empfehlen wir die Übertragung auf unseren Filetransferserver mittels Secure Copy (SCP) und den Verbindungsaufbau mittels IP-restriktiver SSH-Verbindung mit Authentifizierungszertifikat durchzuführen.
Variante 2: Synchronisation via Webservice (REST-API)
Die Abholung erfolgt bei dieser Variante direkt mittels Webservices (ADFS), welche vom Auftraggeber für den externen Zugriff von KenCube aus bereitgestellt werden.
2. ADFS App-Registrierung
Parallel dazu muss der Auftraggeber KenCube in seinem ADFS-Server als App registrieren. Allgemeine Informationen dazu von Microsoft siehe: App Registration in AD FS
Im Zuge dieser Registrierung muss auch der korrekte RedirectURI eingetragen werden, der sich aus dem im Vorfeld bereits gemeinsam festgelegen Applikations-URL plus der Pfaderweiterung "/sso.php" zusammensetzt, z.B. https://intranet.example.com/sso.php
Für die weitere Einrichtung in KenCube muss der Auftraggeber dann folgende Parameter bekanntgeben, die bei der Registrierung am ADFS-Server erzeugt bzw. eingetragen wurden:
- ClientSecret
- ClientId
3. SSO-Anmeldung
KenCube erkennt am gültigen Token, ob der/die Benutzer*in bereits angemeldet ist und öffnet direkt das Intranet, ohne dabei die Login-Seite anzuzeigen.
Wenn kein Token vorhanden oder dieser abgelaufen ist, wird der/die Benutzer*in zum ADFS-Login umgeleitet. Nach erfolgreicher Authentifizierung gelangt man direkt in die KenCube-Applikation (ohne KenCube Login-Seite).