LDAP
From i-doit documentation
Contents |
i-doit LDAP Integration
Seit Version 0.9.4-5 bietet i-doit eine LDAP Schnittstelle zu ldap-directories. Mit dieser Erweiterung ist es möglich, die Benutzerverwaltung eines laufenden Directories anzuzapfen und sich mit entsprechenden Benutzerkennungen in i-doit einzuloggen.
Installation
- Aktivieren Sie die php_ldap extension in ihrer php.ini oder Installieren Sie diese nach, sofern nicht vorhanden (http://de.php.net/manual/de/ldap.setup.php)
- Installieren Sie das LDAP Modul über den i-doit Updater (http://doc.i-doit.org/wiki/Update). Dieses ist ab Version 0.9.4-5 standardmäßig im Paket enthalten
- Nach erfolgreicher Installation wird die Schnittstelle unter dem Menüpunkt "Modules -> LDAP" konfiguriert.
Hinweis: Es kann eine unbegrenzte Anzahl an Server-Konfigurationen geben. Ein Server wird nur dann abgefragt, wenn die Konfiguration auf Aktiv gesetzt wurde.
Konfiguration
Gruppen
Feste Zuweisung
Das LDAP Modul kann Benutzer beim Login automatisch einer bestimmten Gruppe zuweisen. Hierzu müssen die entsprechenden IDs der Gruppen (Admin hat beispielsweise die ID 15) kommasepariert in der Datei i-doit-root/src/constants.inc.php in Zeile 26 (C__LDAP__GROUP_IDS) eingetragen werden.
Beispiel, Gruppe Admin:
define("C__LDAP__GROUP_IDS", "15");
Beispiel, Gruppe Reader und Editor:
define("C__LDAP__GROUP_IDS", "11,12");
Die IDs Ihrer Gruppen findet man unter Kontakte -> Gruppen.
Automatische Zuweisung
Die automatische Zuweisung erfolgt über ein Mapping der i-doit Rechte Gruppen zur entsprechenden Gruppe des LDAP-Servers. Das Mapping erfolgt über das Feld LDAP-Gruppe in der Detailansicht der i-doit Gruppen.
Beispiel:
Kontakte -> Gruppen -> Admin
LDAP-Gruppe: System_Administratoren
Loggt sich nun ein User der Gruppe System_Administratoren ein, wird dieser im i-doit der Gruppe Admin zugewiesen.
Server
Nach der Konfiguration Ihres LDAP Servers und erfogleichem Verbiondungs-Test können sich Benutzer aus der Konfigurierten OU in die i-doit Oberfläche einloggen. Der Benutzername fürs Active Directory ist in der Standardeinstellung der sAMAccountName, also der Windows Logon Name. Für Novell und OpenLDAP wird der CN als Benutzername verwendet.
Hinweise:
- Bei großen Directories ist es ist nicht empfehlenswert, den Baum rekursiv durchsuchen zu lassen, da es hierbei zu enormen Zeitverzögerungen beim Anmeldevorgang kommen kann - Für unterschiedliche Benutzer-OUs legen Sie am besten mehrere Server mit nicht rekursiven Suchparametern an - Informationen zu LDAP-Filtern finden Sie in verschiedenen Quellen : http://www.google.de/search?q=ldap+filter
LDAP-Mappings
Die LDAP Mappings innerhalb der LDAP-Directory Konfiguration werden zum verbinden von LDAP- zu i-doit-Attributen verwendet. Wenn Sie also beispielsweise lieber den CN als i-doit Login Namen verwenden möchten, geben Sie beim Username Mapping "cn" an, soll es der Windows Login Name beim Active Directory sein, ist das Mapping "sAMAccountName" zu benutzen. Eine Auswahl der zur Verfügung stehenden Attributen hängt von Ihrem verwendeten Directory ab, diese entnehmen Sie bitte dem entsprechenden Hersteller oder verwenden zum Durchsuchen einem LDAP-Browser.
Beispiel Mapping Active Directory:
i-doit Microsoft Active Directory --------------------------------------------------- Benutzername (Login) sAMAccountName Gruppe memberof Vorname givenName Nachname sn E-Mail Adresse mail Art des Kontakts objectClass
Debug
Falls der Login nicht direkt funktioniert, gibt es die Möglichkeit einen Debug Modus zu aktivieren. Dieser lässt sich in der Datei src/constants.inc.php konfigurieren (Parameter: C__LDAP__DEBUG). Die Möglichen Werte lauten "true" für aktiviert, und "false" für deaktiviert. (Ohne Anführungszeichen) Wenn das Debugging aktiviert wurde wird eine Logdatei mit dem Namen ldap_debug.txt in den i-doit/temp/ Ordner geschrieben. Diese enthaelt dann erweiterte Informationen über den fehlgeschlagenen Login und die allgemeine Vorgehensweise des LDAP-Moduls.
