Update LdapAuthMiddleware.php (#1710)

This commit is contained in:
FloSet
2021-12-06 22:22:10 +01:00
committed by GitHub
parent c8c63bea5d
commit 1e8a1d7ffb

View File

@@ -47,6 +47,7 @@ class LdapAuthMiddleware extends AuthMiddleware
$ldapFirstName = $result[0]['givenname'][0]; $ldapFirstName = $result[0]['givenname'][0];
$ldapLastName = $result[0]['sn'][0]; $ldapLastName = $result[0]['sn'][0];
$ldapDistinguishedName = $result[0]['dn']; $ldapDistinguishedName = $result[0]['dn'];
$ldapUidAttribute = $result[0][strtolower(GROCY_LDAP_UID_ATTR)][0];
if (is_null($ldapDistinguishedName)) if (is_null($ldapDistinguishedName))
{ {
@@ -66,10 +67,10 @@ class LdapAuthMiddleware extends AuthMiddleware
ldap_close($connect); ldap_close($connect);
$db = DatabaseService::getInstance()->GetDbConnection(); $db = DatabaseService::getInstance()->GetDbConnection();
$user = $db->users()->where('username', $postParams['username'])->fetch(); $user = $db->users()->where('username', $ldapUidAttribute)->fetch();
if ($user == null) if ($user == null)
{ {
$user = UsersService::getInstance()->CreateUser($postParams['username'], $ldapFirstName, $ldapLastName, ''); $user = UsersService::getInstance()->CreateUser($ldapUidAttribute, $ldapFirstName, $ldapLastName, '');
} }
$sessionKey = SessionService::getInstance()->CreateSession($user->id, $postParams['stay_logged_in'] == 'on'); $sessionKey = SessionService::getInstance()->CreateSession($user->id, $postParams['stay_logged_in'] == 'on');