Die Anbindung an Active Directory erfolgt ebenfalls per LDAP. Die Eigenheiten der Konfiguration von ist hier beschrieben.
Die Konfiguration zur Kommunikation mit dem LDAP-Server werden in der Datei /etc/benno-web/ldapauth.conf
vorgenommen.
Die in der Datei auskommentierten Angaben für die einzelnen Parameter sind Voreinstellungen, die auch mit Kommentarzeichen aktiv sind.
Die folgenden Anpassungen sind für die Anbindung von Benno MailArchiv an einen LDAP-Server notwendig.
host = ldap.lw-systems.de
Der Hostname oder die IP-Adresse des LDAP-Server. Falls der Dienst nicht an den Standard-Port 389 gebunden ist, wird der Port mit einem Doppelpunkt getrennt angegeben. Ein Backup-Host kann hier durch ein Komma getrennt angegeben werden.
basedn = dc=lw-systems,dc=net
Die BaseDN des LDAP-Verzeichnisses.
userattr = uid
Der Benutzername wird hier angegebenen Attribut gesucht. Bei der Authentisierung gegen eine Windows AD Domäne muss der Parameter auf sAMAccountName gesetzt werden.
usersuffix = ou=users,dc=lw-systems,dc=net
In der Voreinstellung bei nicht belegtem Wert von usersuffix wird eine Suche im LDAP nach dem Userobjekt durchgeführt. Dieses erfordert die Möglichkeit eines anonymen Bind am LDAP Verzeichnis oder die Konfiguration der binddn und mit entsprechendem passwort.
Falls keine Suche möglich ist, wird hier der vollständige distinguished Name der OU angegeben, in der die Userobjekte gespeichert sind. Beim Login des Users wird dann ein Bind mit uid=<username> und dem Wert von „usersuffix“ durchgeführt.
objectclass = posixAccount
Der Filter der Objektklasse, die ein User Account besitzen muss. Windows AD erfordert hier die Einstellung user.
userfilter = (&(objectClass=posixAccount)(uid=%s))
Mit diesem Parameter können beliebige LDAP-Filter konfiguriert werden, auf die ein gültiges User-Objekt zutreffen muss. Dieses bietet die Möglichkeit, das Login am Benno MailArchiv nur für ausgewählte Benutzer zu erlauben.
Falls diese Einstellung aktiv ist, werden die Werte von userattr und objectclass ignoriert.
tls = false
Wenn auf true gesetzt, erfolgt die Abfrage des LDAP-Servers verschlüsselt.
binddn = cn=admin,dc=lw-systems,dc=net
Falls aktiviert, führt das Authentisierungsmodul zuerst eine LDAP Bind mit diesem Benutzer-DN und dem u.a. password durch.
email = mail alias = emailAlias
Aus den hier konfigurierten LDAP-Attributen werden die gültigen E-Mail Adressen eines Benutzers ermittelt.
Hier können per Komma getrennt jeweils mehrere Attribute angebeben werden.
Beispiel: alias = emailAlias, mailAlternativeAddress
addemail = mitarbeiter@lw-systems.net
Die hier konfigurierten Adressen werden allen Benutzern als zusätzliche E-Mail Adresse zugeordnet. Die Liste der Adressen wird mit Komma und Leerzeichen getrennt.
role = bennoRole
Dieses (String-) Attribut enhält die Rolle, die dem User beim Login zugeordnet wird. Falls hier nichts eingetragen ist, bekommen jeder Benutzer mindestens die Role USER.
container = bennoContainer
Dieses (String-) Attribut enhält den Container auf den der benutzer nach dem Login zugreifen darf. Falls kein entsprechendes Attribut konfiguriert ist, wird die Einstellung von default_container übernommen.
default_container = BennoContainer
Jeder Benutzer erhält beim Login auf diesen Container Zugriff. Der Container BennoContainer ist der voreingestellte Container bei der Archivierung und sollte ohne wichtigen Grund nicht geändert werden.
adminuser = bennoadmin, superadmin
Liste von Benutzernamen, die nach dem Login die Rolle ADMIN zugewiesen bekommen.
revisoruser = revisor
Liste von Benutzernamen, die nach dem Login die Rolle REVISOR zugewiesen bekommen.
Default: false
Falls dieser Wert auf true gesetzt wird, wird das Attribut „whenCreated“ (ActiveDirectory) ausgelesen und hiermit ein Filterstring generiert, der den Zugriff auf E-Mails vor dem Erstellungsdatum des Users unterbindet.
loglevel = 0
Loglevel des Authentisierungsmoduls beim Debgging über die Kommandozeile.
echo -e "<username>\n<password>" | /etc/benno-web/auth.d/benno_ldapauth
Das Modul benno_ldapgroups
ermöglicht die Zuordnung von E-Mail Adressen, die die für Benutzergruppen konfiguriert sind.Alle Benutzer der Gruppe dürfen auf E-Mails der Gruppenadresse zugreifen.
Das Modul wird mit dem Kommando
ln -s /usr/lib/benno-web/benno_ldapgroups /etc/benno-web/auth.d/
aktiviert.
Dieses Authentisierungs-Modul ist mit Benno Web 2.4.1 verfügbar.
groupobjectclass = posixGroup
Die Objektklasse der gültigen Gruppen für die Zuordnung.
groupuserattr = memberUid
Der Benutzername wird in diesem Attribut der Gruppe gesucht. Falls in der Gruppe der Bentzername gesetzt ist, wird die E-Mail Adresse aus dem groupmailattr gelesen.
groupmailattr = univentionFreeAttribute15
Dieses Attribut enthält E-Mail Adressen, die der Gruppe zugeordnet sind. Als Beispiel wurde hier die Konfiguration einer UCS Domäne herangezogen.
Das LDAP-Schema kann mit spezifischen Attributen für Benno MailArchiv erweitert werden. Das Schema ist in der Schemadefinition beschrieben.
Diese Attribute müssen in der Konfigurationsdatei ldapauth.conf entsprechend adressiert werden.