fix(Token): make new scope future compatible

- "password-unconfirmable" is the effective name for 30, but a draft
  name was backported.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
This commit is contained in:
Arthur Schiwon 2024-06-12 11:05:43 +02:00
parent 02313013ad
commit 3b840dfb79
No known key found for this signature in database
GPG key ID: 7424F1874854DF23
4 changed files with 4 additions and 4 deletions

View file

@ -103,7 +103,7 @@ class PasswordConfirmationMiddleware extends Middleware {
return;
}
$scope = $token->getScopeAsArray();
if (isset($scope['sso-based-login']) && $scope['sso-based-login'] === true) {
if (isset($scope['password-unconfirmable']) && $scope['password-unconfirmable'] === true) {
// Users logging in from SSO backends cannot confirm their password by design
return;
}

View file

@ -309,6 +309,6 @@ class JSConfigHelper {
return true;
}
$scope = $token->getScopeAsArray();
return !isset($scope['sso-based-login']) || $scope['sso-based-login'] === false;
return !isset($scope['password-unconfirmable']) || $scope['password-unconfirmable'] === false;
}
}

View file

@ -197,7 +197,7 @@ class OC_User {
if (empty($password)) {
$tokenProvider = \OC::$server->get(IProvider::class);
$token = $tokenProvider->getToken($userSession->getSession()->getId());
$token->setScope(['sso-based-login' => true]);
$token->setScope(['password-unconfirmable' => true]);
$tokenProvider->updateToken($token);
}

View file

@ -198,7 +198,7 @@ class PasswordConfirmationMiddlewareTest extends TestCase {
$token = $this->createMock(IToken::class);
$token->method('getScopeAsArray')
->willReturn(['sso-based-login' => true]);
->willReturn(['password-unconfirmable' => true]);
$this->tokenProvider->expects($this->once())
->method('getToken')
->with($sessionId)