Benutzer-Werkzeuge

Webseiten-Werkzeuge


ldap-authentisierungsmodul

LDAP-Authentisierungsmodul

Die Authentisierung gegen ein LDAP-Verzeichnis ist mit Hilfe eines Authentisierungsmoduls möglich. Zur Anbindung des LDAP-Moduls wird die Authentisierung auf „extern“ umgestellt.

In der Datei /etc/benno-web/benno.conf wird der Pfad zur externen Authentisierung wie folgt eingestellt:

EXTERNAL_AUTH = /usr/sbin/benno_auth.d

Ein eventuell vorhandenes Kommentarzeichen (#) vor dem Eintrag wird entfernt.

Das LDAP-Authentisierungsmodul wird per Symlink in das Verzeichnis des Authentisierungs-Stacks aktiviert:

ln -s /usr/lib/benno-web/benno_ldapauth /etc/benno-web/auth.d/

Active Directory

Die Anbindung an Active Directory erfolgt ebenfalls per LDAP. Die Eigenheiten der Konfiguration von ist hier beschrieben.

LDAP Anbindung

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.

Konfigurationsdatei ldapauth.conf

Die folgenden Anpassungen sind für die Anbindung von Benno MailArchiv an einen LDAP-Server notwendig.

Benutzer-Authentisierung

host

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

basedn = dc=lw-systems,dc=net

Die BaseDN des LDAP-Verzeichnisses.

userattr

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

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

objectclass = posixAccount

Der Filter der Objektklasse, die ein User Account besitzen muss. Windows AD erfordert hier die Einstellung user.

userfilter

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

tls = false

Wenn auf true gesetzt, erfolgt die Abfrage des LDAP-Servers verschlüsselt.

binddn

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 / alias

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

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

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

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

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

adminuser = bennoadmin, superadmin

Liste von Benutzernamen, die nach dem Login die Rolle ADMIN zugewiesen bekommen.

revisoruser

revisoruser = revisor

Liste von Benutzernamen, die nach dem Login die Rolle REVISOR zugewiesen bekommen.

filter_before-created

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

loglevel = 0

Loglevel des Authentisierungsmoduls beim Debgging über die Kommandozeile.

echo -e "<username>\n<password>" | /etc/benno-web/auth.d/benno_ldapauth

Gruppen-Zuordnung

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

groupobjectclass = posixGroup

Die Objektklasse der gültigen Gruppen für die Zuordnung.

groupuserattr

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

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.

Schemaerweiterung

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.

ldap-authentisierungsmodul.txt · Zuletzt geändert: 2021/10/13 12:58 von lwsystems