Hello, i'm trying to setup the LDAP connection and it appears to be working except no one can login using their AD credentials.
The connection to AD appears to be working but it gives the same error every time: (where my.username = my real sAMAccountName)
Login error for user 'my.username'
2018-08-09 11:08:23.618 ===== TRACE ===== authenticate - Filter error : ldap_search returned no result for filter uid=my.username)
2018-08-09 11:08:23.697 ===== TRACE ===== Login error for user 'my.username'
I've checked all the parameters.php and DB settings, they're all using 'sAMAccountName=%USERNAME%' but the log still shows 'uid='
Tried all combinations of uid, sAMAccount, UserPrincipalName
If i use domainusername it fails because of the
Or sometimes i get the error:
** ERROR ** [V7.0.9] on file 'C:xampphtdocsmodelUserMain.php' at line (1158)
2018-08-09 11:41:00.395 ** ERROR ** [V7.0.9] cause = ldap_search(): Search: Bad search filter
Found the problem in the config.php file, guess i had tweaked the wrong values 😳
I was using:
$param['ldap_user_filter'] = 'sAMAccountName=%USERNAME%';
$label['ldap_user_filter'] = "Ldap filter";
$value['ldap_user_filter'] = "Ldap filter to find used name (must include %USERNAME%)";
$pname['ldap_user_filter'] = 'paramLdap_user_filter';
$ctrls['ldap_user_filter'] = '';
But this worked instead (even though it still says "sAMAccountName=%USERNAME%" in the global params:
$param['ldap_user_filter'] = 'uid=%USERNAME%';
$label['ldap_user_filter'] = "Ldap filter";
$value['ldap_user_filter'] = "Ldap filter to find used name (must include %USERNAME%)";
$pname['ldap_user_filter'] = 'paramLdap_user_filter';
$ctrls['ldap_user_filter'] = '';
You should check the parameters.php file.
If parameters value exist in this file, they always overwrite values in the DB.