If an LDAP server is available in the congregation, users can be authenticated against it. This means that separate passwords are no longer required in ChurchTools, but the user can use their password for the entire system environment.
Alternativ dazu kann ChurchTools auch selber einen LDAP-Service zur Verfügung stellen, gegen den dann andere Systeme authentifiziert werden können.
Process #
ChurchTools first connects via user:password@server to gain access to the content of the LDAP server. Then the user is searched for by e-mail or user name and finally the user himself is attempted to be authenticated.
If successful, it checks whether the user is already registered in ChurchTools. If not, the user is newly created.
Setup #
ChurchTools supports access to the LDAP server via LDAP, LDAP with START-TLS, or LDAPS. If you want to use your own LDAP server, our support can set it up for you in your ChurchTools. The following data is required for this:
; URI zu dem LDAP Server sowie Benutzername und Passwort für den Zugriff auf den LDAP-Server
ldap_config[server]="ldap://ldapserver.de:389"
; alternativ mit START-TLS:
ldap_config[server]="ldap://ldapserver.de:389"
ldap_config[tls]=1
; alternativ mit LDAPS:
ldap_config[server]="ldaps://ldapserver.de:636"
ldap_config[user]="uid=XXX,cn=users,dc=churchtools,dc=de"
ldap_config[password]=XXX
; Base-DN aller Nutzer, in denen mit dem Filter unten gesucht werden soll
ldap_config[basedn]="cn=users,dc=churchtools,dc=de"
; Filter, um nach dem richtigen Benutzer anhand von E-Mail oder Benutzername zu suchen
ldap_config[filter_mail]="(mail=%u)"
ldap_config[filter_username]="(uid=%u)"
; LDAP-Felder für die einzelnen Felder in Personen. Hinter dem "=" stehen die Feldnamen, die vom LDAP-Server zurückgegeben werden.
ldap_config[mail]=mail
ldap_config[givenname]=givenname
ldap_config[name]=sn
ldap_config[username]=uid
; Wenn ein User nicht in Personen vorhanden ist wird er angelegt. Hier werden dafür Bereich, Personenstatus und Standort festgelegt.
ldap_config[create_dep]=1
ldap_config[create_status]=1
ldap_config[create_station]=0; (station = Standort)