summaryrefslogtreecommitdiffstats
path: root/apps/user_ldap
diff options
context:
space:
mode:
authorRenaud Fortier <Renaud.Fortier@fsaa.ulaval.ca>2015-08-11 11:55:38 -0400
committerRenaud Fortier <Renaud.Fortier@fsaa.ulaval.ca>2015-08-11 11:55:38 -0400
commit3c53a0da279ec167c0a8e64dc8c92bc700daf770 (patch)
treecdd8ce1ee8da8f29b5a4ed3c8ef908dd035a1e1a /apps/user_ldap
parentcd5342d0ff2852f5b2efcad67adc4dffc4eed6cc (diff)
downloadnextcloud-server-3c53a0da279ec167c0a8e64dc8c92bc700daf770.tar.gz
nextcloud-server-3c53a0da279ec167c0a8e64dc8c92bc700daf770.zip
if define, check the userfilter if the user is still allowed
Diffstat (limited to 'apps/user_ldap')
-rw-r--r--apps/user_ldap/lib/access.php2
-rw-r--r--apps/user_ldap/user_ldap.php6
2 files changed, 6 insertions, 2 deletions
diff --git a/apps/user_ldap/lib/access.php b/apps/user_ldap/lib/access.php
index a2eb834b496..f32d3feacd2 100644
--- a/apps/user_ldap/lib/access.php
+++ b/apps/user_ldap/lib/access.php
@@ -175,7 +175,7 @@ class Access extends LDAPUtility implements user\IUserTools {
//in case an error occurs , e.g. object does not exist
return false;
}
- if (empty($attr)) {
+ if (empty($attr) && ($filter === 'objectclass=*' || $this->ldap->countEntries($cr, $rr) === 1)) {
\OCP\Util::writeLog('user_ldap', 'readAttribute: '.$dn.' found', \OCP\Util::DEBUG);
return array();
}
diff --git a/apps/user_ldap/user_ldap.php b/apps/user_ldap/user_ldap.php
index a2f4b4ee9e5..204995198bd 100644
--- a/apps/user_ldap/user_ldap.php
+++ b/apps/user_ldap/user_ldap.php
@@ -176,8 +176,12 @@ class USER_LDAP extends BackendUtility implements \OCP\IUserBackend, \OCP\UserIn
}
$dn = $user->getDN();
+ $userFilter = 'objectclass=*';
+ if ($this->access->connection->ldapUserFilter !== '') {
+ $userFilter = $this->access->connection->ldapUserFilter;
+ }
//check if user really still exists by reading its entry
- if(!is_array($this->access->readAttribute($dn, ''))) {
+ if(!is_array($this->access->readAttribute($dn, '', $userFilter))) {
$lcr = $this->access->connection->getConnectionResource();
if(is_null($lcr)) {
throw new \Exception('No LDAP Connection to server ' . $this->access->connection->ldapHost);