Dokuwiki with LDAP error: User authentication is t

2019-07-04 02:40发布

问题:

I'm trying to setup Dokuwiki with LDAP in my local computer.


The Dokuwiki version is 2014-05-05 "Ponder Stibbons"

Authentication settings

authtype: authldap

Plugin Authldap (bundled plugin) settings

plugin»authldap»server: localhost
plugin»authldap»port: 10389
plugin»authldap»usertree: ou=People,o=sevenSeas
plugin»authldap»grouptree: ou=Groups,o=sevenSeas
plugin»authldap»userfilter:
plugin»authldap»groupfilter:
plugin»authldap»version: 3
plugin»authldap»binddn: uid=admin,ou=system
plugin»authldap»bindpw: secret

Local.php content

<?php
/*
 * Dokuwiki's Main Configuration File - Local Settings
 * Auto-generated by config plugin
 * Run for user: 
 * Date: Fri, 20 Jun 2014 10:04:50 +0200
 */

$conf['title'] = 'Sample Wiki';
$conf['license'] = 'cc-by-sa';
$conf['useacl'] = 1;
$conf['authtype'] = 'authldap';
$conf['superuser'] = '@admin,jhallett';
$conf['disableactions'] = 'register,resendpwd,profile';
$conf['proxy']['user'] = 'admin';
$conf['proxy']['pass'] = '<b>OU9sLi8nXVw=';
$conf['plugin']['authldap']['server'] = 'localhost';
$conf['plugin']['authldap']['port'] = 10389;
$conf['plugin']['authldap']['usertree'] = 'ou=People,o=sevenSeas';
$conf['plugin']['authldap']['grouptree'] = 'ou=Groups,o=sevenSeas';
$conf['plugin']['authldap']['version'] = 3;
$conf['plugin']['authldap']['binddn'] = 'uid=admin,ou=system';
$conf['plugin']['authldap']['bindpw'] = 'secret';
$conf['openregister'] = '0';

// end auto-generated content

LDAP is using Apache DS 2.0.0 and Apache Directory Studio 2.0.0 running on Java 1.7.0_51.

Both installed successfully. I have followed the default installation from Getting Started Guide and added sample configuration and sample LDIF.

I'm using the default configuration according to the Getting Started Guide:

Default Port: 10389
Default Bind DN: uid=admin,ou=system
Default Bind Password: secret

When I save the dokuwiki configuration, I got the following error:

User authentication is temporarily unavailable. 
If this situation persists, please inform your Wiki Admin.

What should I do to fix this problem?

回答1:

Your PHP does not have the LDAP extension installed or enabled. It's needed for AD authentication. Your distribution probably has a separate package for it. Eg. php5-ldap or something.



回答2:

If you happen to use Ubuntu 16.04 you can extend you apache instance with:

sudo apt install php7.0-ldap

and enable the ldap apache module with

sudo a2enmod authnz_ldap

Good luck!