Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

LDAP Authentication

More
3 weeks 6 days ago #275129 by g.a.nadiev
Please help us help you and fill where relevant:
LimeSurvey version: Docker 7.0.14
Own server or LimeSurvey Cloud: own
Survey theme/template: default
==================

Greetings, LimeSurvey Community!

Already have an instance of docker Limesurvey 7.0.14. Everything works fine, but users login using internal limesurvey database with their local accounts, so I need to configure a LDAP Authentication method (with Active Directory).

During the manuals reading I've been confused. I've found 2 ways of configuring LDAP:
1. Via *ldap.php file (/opt/containers/limesurvey/config)
2. Via web interface when enabling AuthLDAP plugin (Core: LDAP Authentication, author: Menno Dekker, version: 1.0.0, Last update: 2018-01-24).

When I'm trying to configure it via web AuthPlugin, I see that it makes no changes to ldap.php config file. So I can conclude that the web plugin does not depend on *.php configurations files.

Trying to find another LDAP Plugin, but that one in LimeStore is compatible only with 6.x vesion, and another one LDAP Extender is only for older versions.

Already read this articles:
Authentication plugins - LimeSurvey Manual
LDAP settings - LimeSurvey Manual

Which way to configure LDAP authentication is correct in my case?

Please Log in to join the conversation.

More
1 week 1 day ago #275217 by g.a.nadiev
Replied by g.a.nadiev on topic LDAP Authentication
Ok. I figured it out myself.
The LDAP authentication is configuring by web. (Anyway, I don't know what is *.php config files for?)

To work with LDAPS you need to rebuild the docker container of limesurvey app with your domain ca-certificate by adding it to /usr/local/share/ca-certificates.
I use the docker composition by Adam Zammit.
Just in case - there is no APK module in app container but already installed ca-certificates package.

You need to create a Dockerfile with content similar to this:

FROM %your_limesurvey_app_container_name%
COPY %your_ca_crt_file% /usr/local/share/ca-certificates/
RUN update-ca-certificates

Then build your container with  command
"docker build -t %final_app-container_name% ."

In the web plugin configuration you must set:
LDAP V3
Port 389 (or 636 if you use LDAPS)
How to perform authentication: search and bind
Login attribute: sAMAccountName
BaseDN in a format like this: OU=unit,DC=domain,DC=com (if you have several then use ";" as a separator)
Optional DN LDAP Account in a format like: CN=username,OU=users,DC=domain,DC=com
Password of the LDAP account
LDAP attribute of email address: mail
LDAP attribute of full name: displayName
If you dont want to create accounts in your Limesurvey app manually then mark the checkbox "Automatically create user if it exists in LDAP server"

Set "Optional base DN for group restriction" for your domain users with authorized access to your limesurvey app in a format like: CN=Your_Limesurvey_Users,OU=Groups,DC=domain,DC=com 
Set "Optional filter for group restriction": (&(cn=Your_Limesurvey_Users)(member=$userdn))

Check your configuration works.
After that you can mark "Check to make default authentication method" checkbox in plugin configuration.

Please Log in to join the conversation.

Moderators: holch, tpartner

Lime-years ahead

Online-surveys for every purse and purpose