Using OpenLDAP with Kanboard
Learn how to replace Kanboard's internal user management database with the superior performance, privacy, and security of OpenLDAP
Kanboard is a free, open-source, self-hosted project management tool designed for minimalism and efficiency using the Kanban methodology. It features a drag-and-drop web interface for visualizing tasks, setting work-in-progress (WIP) limits, and automating workflows. It is lightweight, allows for task, subtask, and comment tracking, and is highly customizable with plugins.
Add these to the Kanboard config.php
define('LDAP_AUTH', true);
define('LDAP_SERVER', 'ldap://ldap-server.com:389');
define('LDAP_SSL_VERIFY', true);
define('LDAP_START_TLS', false);
define('LDAP_USERNAME_CASE_SENSITIVE', false);
define('LDAP_USER_CREATION', true);
define('LDAP_BIND_TYPE', 'user');
define('LDAP_USERNAME', 'uid=%s,ou=people,dc=example,dc=com');
define('LDAP_PASSWORD', null);
define('LDAP_USER_BASE_DN', 'ou=people,dc=example,dc=com');
define('LDAP_USER_FILTER', '(&(uid=%s)(memberof=cn=kanboard_users,ou=groups,dc=example,dc=com))');
define('LDAP_USERNAME_CASE_SENSITIVE', false);
define('LDAP_USER_ATTRIBUTE_USERNAME', 'uid');
define('LDAP_USER_ATTRIBUTE_FULLNAME', 'cn');
define('LDAP_USER_ATTRIBUTE_EMAIL', 'mail');
define('LDAP_USER_ATTRIBUTE_GROUPS', 'memberof');
define('LDAP_USER_ATTRIBUTE_PHOTO', 'jpegPhoto');
define('LDAP_USER_ATTRIBUTE_LANGUAGE', '');Make sure you adapt the constant LDAP_SERVER to the correct LDAP endpoint.
You also have to change dc=example,dc=com to whatever your OpenLDAP is handling, and change the kanboard_users group name used in LDAP_USER_FILTER to identify users of a valid group of yours.
More information on setting up OpenLDAP with Kanboard can be found here.