public function LdapUserManager::getUserDataByIdentifier in Lightweight Directory Access Protocol (LDAP) 8.4
Fetch user data from server by Identifier.
Parameters
string $identifier: User identifier.
Return value
\Symfony\Component\Ldap\Entry|false
This should go into LdapUserProcessor or LdapUserManager, leaning toward the former.
1 call to LdapUserManager::getUserDataByIdentifier()
- LdapUserManager::getUserDataByAccount in ldap_servers/
src/ LdapUserManager.php - Fetch user data from server by user account.
File
- ldap_servers/
src/ LdapUserManager.php, line 199
Class
- LdapUserManager
- LDAP User Manager.
Namespace
Drupal\ldap_serversCode
public function getUserDataByIdentifier(string $identifier) {
if (!$this
->checkAvailability()) {
return FALSE;
}
// Try to retrieve the user from the cache.
$cache = $this->cache
->get('ldap_servers:user_data:' . $identifier);
if ($cache && $cache->data) {
return $cache->data;
}
$ldap_entry = $this
->queryAllBaseDnLdapForUsername($identifier);
if ($ldap_entry) {
$ldap_entry = $this
->sanitizeUserDataResponse($ldap_entry, $identifier);
$cache_expiry = 5 * 60 + time();
$cache_tags = [
'ldap',
'ldap_servers',
'ldap_servers.user_data',
];
$this->cache
->set('ldap_servers:user_data:' . $identifier, $ldap_entry, $cache_expiry, $cache_tags);
}
return $ldap_entry;
}