|
|
|
|
@ -19,6 +19,7 @@ use OCP\Security\ICredentialsManager;
|
|
|
|
|
*/
|
|
|
|
|
class GlobalAuth extends AuthMechanism {
|
|
|
|
|
public const CREDENTIALS_IDENTIFIER = 'password::global';
|
|
|
|
|
private const PWD_PLACEHOLDER = '************************';
|
|
|
|
|
|
|
|
|
|
/** @var ICredentialsManager */
|
|
|
|
|
protected $credentialsManager;
|
|
|
|
|
@ -41,11 +42,18 @@ class GlobalAuth extends AuthMechanism {
|
|
|
|
|
'password' => ''
|
|
|
|
|
];
|
|
|
|
|
} else {
|
|
|
|
|
$auth['password'] = self::PWD_PLACEHOLDER;
|
|
|
|
|
return $auth;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function saveAuth($uid, $user, $password) {
|
|
|
|
|
// Use old password if it has not changed.
|
|
|
|
|
if ($password === self::PWD_PLACEHOLDER) {
|
|
|
|
|
$auth = $this->credentialsManager->retrieve($uid, self::CREDENTIALS_IDENTIFIER);
|
|
|
|
|
$password = $auth['password'];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$this->credentialsManager->store($uid, self::CREDENTIALS_IDENTIFIER, [
|
|
|
|
|
'user' => $user,
|
|
|
|
|
'password' => $password
|
|
|
|
|
|