Voraussetzungen
i-doit unterstützt folgende Verzeichnisdienste:
- OpenLDAP
- Microsoft Active Directory (AD)
- Novel eDirectory (früher Directory Services)
Die PHP-Extension php_ldap
für die Kommunikation mit einem Active Directory (AD) bzw. LDAP-Verzeichnis muss installiert und aktiviert werden. Wer den Installationsanweisungen gefolgt ist, hat die Extension bereits auf dem System.
Nicht vergessen, LDAP zu erlauben, wenn SELinux verwendet wird. Dazu setsebool -P httpd_can_connect_ldap on
verwenden. Das -P steht für Permanent
Überprüfen Sie dies mit getsebool -a | grep httpd
Nachträgliche Installation unter Debian GNU/Linux
sudo apt install php7-ldap sudo service apache2 restart
Nachträgliche Installation unter Windows
Die Datei php.ini
(in der Regel unter C:\xampp\php\php.ini
) muss angepasst werden. In einem Texteditor aktiviert man das Laden der Extension php_ldap
.
Aus der Zeile
;extension=php_ldap.dll
wird das ";" entfernt und somit
extension=php_ldap.dll
Manchmal kann es noch notwendig sein, die Dateien ssleay32.dll
und libeay32.dll
(von Version zu Version unterschiedlich, jedoch meist unter C:\xampp\apache\bin\
zu finden) in das Verzeichnis php\
zu kopieren. Danach muss noch der Apache Webserver neu gestartet werden.
Konfiguration
Die Konfiguration befindet sich in i-doit unter Verwaltung → Schnittstellen / externe Daten → LDAP
. Dort können unter Server
zum Einen ein oder mehrere Instanzen konfiguriert und zum Anderen eine Zuweisung von Feldern zu Attributen vorgenommen werden.
Server
Unter Verwaltung → Schnittstellen / externe Daten → LDAP → Server
können ein oder mehrere Instanzen konfiguriert werden. Beim Login werden alle Server nacheinander abgefragt, bis ein Login gefunden wurde. Gibt es mehrere Mandanten, werden alle nacheinander abgefragt und die Datenbanken für den Login angeboten, wenn die Abfrage ein positives Ergebnis geliefert hat.
LDAP Verbindung für Lookups (lesend)
Identifizierung von Objekten
Ohne weitere Einstellung z.B. Eindeutige Kennung
wird anhand des Login
Attributes aus der Kategorie Personen → Login
identifiziert.
Den ldap-sync ausführen
Der ldap-sync lässt sich nur über die Console des Servers ausführen. Um die Console richtig bedienen zu können, sollte der Artikel dazu bekannt sein. Eine einfache Synchronisation ohne die erweiterte Konfiguration dient die Option ldap-sync
. Eine Beschreibung der Parameter ist im entsprechenden Kapitel zu finden.
sudo -u www-data php console.php ldap-sync --user admin --password admin --tenantId 1 --verbose --ldapServerId 1