Benutzerverzeichnis: Active Directory & LDAP

In Haiilo können verschiedene Benutzerverzeichnisse verbunden werden. Ihr könnt z.B. zwischen Active Directory und LDAP wählen, beide benutzen das LDAP-Protokoll. Für die Anbindung eurer Benutzerverzeichnisse über Google Workspace oder MS Graph gibt es nur marginale Abweichungen zum LDAP-Protokoll. Diese Abweichungen findet ihr in den verlinkten Artikeln.

Wir durchlaufen in diesem Artikel mit euch anhand eines Beispiels den Prozess zur Erstellung und Verbindung von Benutzerverzeichnissen der Art Microsoft Active Directory, da es der bekannteste Verzeichnisdienst ist.

Allgemein

Loggt euch als Administrator in Haiilo ein und öffnet die Administration. Klickt auf den Punkt "Benutzerverzeichnisse". Dort werdet ihr, wie im Bildausschnitt zu erkennen, das Benutzerverzeichnis "Applikations-Datenbank" sehen. Das Verzeichnis beinhaltet alle lokalen Nutzer, die in Haiilo erstellt werden.

Klickt auf "Verzeichnis anlegen", um ein neues Benutzerverzeichnis hinzuzufügen.

Benutzerverzeichnis_anlegen.png

Wählt anschließend einen Namen, den Typ "Active Directory" und aktiviert das Verzeichnis, in dem ihr einen Haken in der Checkbox "Aktiv" setzt.

Verbindung

Als Nächstes geht es darum die Details in den einzelnen Reitern zu füllen. Wir beginnen mit der Verbindung: Hostname, Port, Basis DN, Benutzername und Passwort sind Pflichtfelder, die ausgefüllt werden müssen.

Bildschirmfoto_2019-08-08_um_14.27.46.png

Als Hostname tragt ihr den Server ein, der euer Benutzerverzeichnis verwaltet.

Der Standard LDAP Port is 389. Der Standard Port für die verschlüsselte SSL Kommunikation ist Port 636.

Wenn ihr SSL aktiviert, benötigt euer AD-Server ein offiziell signiertes Zertifikat. 

Hinweis:

Es ist nicht möglich, in unserer Haiilo Cloud ein selbst signiertes Zertifikat zu verwenden.

Ein Eintrag für AD Domäne ist nur notwendig, wenn den Zugriff auf Haiilo für eine Domäne beschränken möchtet.

Beispiel:

Falls Ihr unterschiedliche Suffixe für die Anmeldenamen eurer Benutzer habt, z. B. @coyo.com und @coyo.local, und Ihr definiert in diesem Feld "coyo.local", können sich Benutzer mit @coyo.com mehr anmelden. 

Für jede Verbindung muss der Base Distinguished Name ("Basis DN") eingetragen werden. Dieser gibt an, welchen Bereich eures Forest oder Trees ihr mit der Konfiguration abdecken wollt. 

Hinweis:

Optional können in den folgenden Einstellungen unter "Benutzer" und "Gruppen" zusätzliche DNs angegeben werden, um genauer zu definieren, welche Benutzerkonten oder Gruppenkonten beachtet werden sollen.

Unter Benutzernamen benötigt das Benutzerverzeichnis einen Nutzer, welcher ausreichend Leseberechtigung für die Objekte hat, die synchronisiert werden (Bind DN). Haiilo wird nichts in eurem Benutzerverzeichnis verändern und benötigt daher kein Schreibrecht.

Das Passwort dieses Nutzers ist notwendig.

Mit einem Klick auf "Verbindung testen", wird geprüft, ob euer Verzeichnis mit diesen Einstellungen erreichbar ist.

Benutzer

In diesem Reiter wird definiert, welche Nutzer synchronisiert werden. Ohne Einstellungen wird alles durchsucht.

Bildschirmfoto_2019-08-06_um_17.18.03.png

Für die genauere Selektion von Nutzern, definiert ihr Zusätzliche Benutzer DN. Dieser wird an den vorweg konfigurierten Base DN hinzugefügt.

Definiert Klasse des Benutzer-Objekts am besten so, dass nur nach der Klasse "person" gesucht wird.

Zusätzlich zu dieser Auswahl kann über Filter des Benutzer-Objekts mit einem LDAP-Filter-Syntax gearbeitet werden. Das ermöglicht nur Nutzer für Haiilo Home zu berücksichtigen, welche Mitglied einer bestimmten Gruppe sind. Außerdem werden Nutzer, die dieser Gruppe nicht mehr angehören als verwaiste Nutzer behandelt. Komplexere Filter sind auch möglich.

Hinweis:

Aufgrund der Einschränkungen des LDAP-Protokolls, können Wildcards für DN-Attribute nicht verwendet werden.

Wir empfehlen euch, als Benutzer-ID ausschließlich "objectGUID" zu verwenden, da dieses Attribut einzigartig ist und sich nicht verändert.

Die restlichen Attribute und Profilfelder sind optional wählbar. Wir empfehlen euch, die vorgegebenen Attribute zu verwenden, um Probleme zu vermeiden.

Gruppen

Um Gruppen aus dem Benutzerverzeichnis zu synchronisieren, müsst ihr zuerst die Checkbox Gruppen synchronisieren aktivieren.

Bildschirmfoto_2019-08-06_um_17.11.32.png

 

Tragt unter zusätzlicher Gruppen DN den Ort ein, der die Gruppen definiert und unter Klasse der Gruppen-Objekte nach welcher Klasse der Gruppen gesucht werden soll.

Im Feld Filter für Gruppen-Objekte geben wir einen LDAP Filter Syntax an, um nur bestimmte Gruppen zu synchronisieren.

Haiilo Home prüft Gruppen-ID und Benutzer Attribut für Gruppen-Mitgliedschaften. Wenn beide Werte gleich sind, wird der Nutzer dieser Gruppe zugeordnet. Falls ihr OpenLDAP verwendet, muss Benutzer Attribut für Gruppen-Mitgliedschaften angegeben werden.

Hinweis:

Verschachtelte Gruppen werden nicht berücksichtigt.

Die restlichen Attribute sind optional wählbar. Wir empfehlen euch die vorgegebenen Werte zu verwenden.

Synchronisation

In diesem Reiter könnt ihr Einstellungen zur Synchronisation vornehmen. 

Bildschirmfoto_2019-08-06_um_17.19.15.png

Der Wert in Page Size definiert, wie viele Elemente pro Abfrage synchronisiert werden sollen. Das Limit des LDAP-Protokolls liegt bei 1000. Ihr solltet also keinen höheren Wert wählen.

Nutzer können im Verzeichnis als Verweis zu einer anderen Domäne oder einem Verzeichnis gespeichert werden und mit der Einstellung Verweisen folgen werden die Verweise berücksichtigt. Diese Verweise ermöglichen es z.B. einen Verzeichnisbaum zu partitionieren und auf mehrere LDAP-Server zu verteilen. Das bedeutet, dass LDAP-Server möglicherweise nicht den gesamten Verzeichnisinformationsbaum speichern, aber dennoch Verweise auf andere LDAP-Server enthalten können, die stattdessen angeforderte Informationen anbieten.

Beispiel:

Wenn Haiilo Home also mit einem Verzeichnis synchronisiert, kann ein LDAP-Server euch auf einen anderen Server verweisen, indem er Verweise (Referrals) zurückgibt. Ein Referral ist ein Eintrag mit dem Referral-ObjektClass, der mindestens ein Attribut namens ref enthält, das eine LDAP-URL des referierten Eintrags auf einem anderen LDAP-Server als Wert hat. 

Hinweis:

Wenn euer Sync mit einer Zeitüberschreitung beendet wird ("timeout error"), kann es möglicherweise daran liegen, dass versucht wird, einem Verweis zu folgen, welcher nicht erreichbar ist oder nicht genügend Berechtigungen vorhanden sind.

Die Option Aktivierung ermöglicht, dass neue und wiederhergestellte Nutzer bei der Synchronisierung aktiviert werden. Anderenfalls müsstet ihr den Status der Nutzer in der Benutzerverwaltung manuell auf "Aktiv" setzen.

Hinweis:

Wenn ihr Nutzungsbedingungen in der Administration aktiviert habt, bleiben die neuen und wiederhergestellten Nutzer auf "Versteckt" bis sie diese akzeptiert haben.

Bei Just-in-time-Synchronisation werden die Nutzer erst erstellt und die Nutzerdaten synchronisiert, wenn diese sich anmelden. Diese Einstellung ergibt Sinn, wenn nur Benutzer importiert werden sollen, die sich anmelden. Dafür sollte die automatische Synchronisation deaktiviert werden, damit nicht alle Benutzer bereits in Haiilo existieren.

Verwaiste Benutzer sind Nutzer, welche derzeit als aktiver Nutzer existieren, aber im LDAP Verzeichnis nicht mehr vorhanden sind. Es besteht die Möglichkeit, die Nutzer in Haiilo Home beim Sync zu ignorieren, deaktivieren oder zu löschen.

Der Punkt Benutzer wiederherstellen ermöglicht es deaktivierte oder gelöschte Nutzer von Haiilo Home wieder zu reaktivieren, wenn diese beim Sync im Benutzerverzeichnis wieder vorhanden sind.

Hinweis:

Es ist nicht möglich anonymisierte Nutzer wiederherzustellen. Der vorher anonymisierte Nutzer kann dann lediglich als neuer Nutzer erstellt werden. Die Anonymisierung ist standardmäßig deaktiviert und kann in den "Allgemeinen Einstellungen" der Administration aktiviert werden.

Ausführung

Hier könnt ihr die Regelmäßigkeit der Synchronisierung konfigurieren. Ihr habt die Optionen einmal pro Tag (nachts), mehrmals täglich (alle vier Stunden) und einmal pro Stunde.

FAQ

Wie kann ein LDAP-Server sicher mit der Haiilo-Cloud verbunden werden?

In einigen Umgebungen wird man bei dem Vorhaben "LDAP-Server für eine Cloud freigeben" Sicherheitsbedenken haben. Das ist auch vollkommen verständlich, immerhin betreffen die freigegebenen Informationen wichtige Daten eurer Mitarbeiter.

Eine VPN-Verbindung in unsere Cloud können wir infrastrukturell nicht anbieten, daher ist hier ein Vorschlag, wie dies trotzdem mit entsprechender Sicherheit realisiert werden kann:

LDAPS

In der Cloud gibt es die Möglichkeit LDAPS (LDAP over SSL) zu verwenden.

Die Voraussetzung dafür sind:

  • LDAPS: Eurer LDAP-Server kann verschlüsselt kommunizieren
  • Das SSL Zertifikat muss von einer offiziellen Zertifikatsstelle stammen

DMZ

Außerdem könnt ihr euer Netzwerk absichern, wenn ihr für Haiilo Home z.B. einen Read-Only-Domain Controller in einer DMZ verwendet. Zusätzlich könnt ihr das Netzwerk dieser DMZ nur für die IP-Adressen unserer Backends freigeben.

Was können wir bei Verbindungsproblemen tun?

java.net.ConnectException: Connection refused

Haiilo kann keine Verbindung zum LDAP-Server herstellen, da es nicht in der Lage ist, den Pfad aufzulösen, den es zum LDAP/Active Directory Server verwenden kann. Dies solltet ihr prüfen und anpassen:

  • Möglicherweise ist ein Reverse-Proxy vorhanden, der die Verbindung blockiert.
  • Es könnte eine Firewall zwischen den Servern vorhanden sein, die den Port blockiert.
  • Haiilo Home kann den Hostnamen des LDAP-Servers nicht korrekt auflösen.

No subject alternative DNS name matching <hostname> found

Haiilo Home kann bei der Kommunikation mit einem LDAP-Server über SSL den Hostnamen im SSL-Zertifikat überprüfen. Das bedeutet, dass der für die Verbindung mit dem LDAP-Server verwendete Hostname mit dem des SSL-Zertifikats übereinstimmen muss, sonst kann Haiilo keine Verbindung zum Verzeichnis herstellen.

Eine weitere mögliche Ursache für dieses Problem ist, wenn in den Benutzerverzeichnis-Konfigurationen bei der Verbindung zu einem LDAP-Verzeichnis die Option Synchronisation > Verweisen folgen aktiviert ist.

War dieser Beitrag hilfreich?