Return correct loginname in credentials,
even when token is invalid or has no password. Returning the uid as loginname is wrong, and leads to problems when these differ. E.g. the getapppassword API was creating app token with the uid as loginname. In a scenario with external authentication (such as LDAP), these tokens were then invalidated next time their underlying password was checked, and systematically ceased to function. Signed-off-by: Lionel Elie Mamane <lionel@mamane.lu>
This commit is contained in:
parent
b19525ebbc
commit
2f75ba1adb
|
@ -112,7 +112,7 @@ class Store implements IStore {
|
||||||
|
|
||||||
if ($trySession && $this->session->exists('login_credentials')) {
|
if ($trySession && $this->session->exists('login_credentials')) {
|
||||||
$creds = json_decode($this->session->get('login_credentials'));
|
$creds = json_decode($this->session->get('login_credentials'));
|
||||||
return new Credentials($creds->uid, $creds->uid, $creds->password);
|
return new Credentials($creds->uid, $this->session->get('loginname'), $creds->password);
|
||||||
}
|
}
|
||||||
|
|
||||||
// If we reach this line, an exception was thrown.
|
// If we reach this line, an exception was thrown.
|
||||||
|
|
Loading…
Reference in New Issue