From 0ea266e8bffefef2091b8ad42f08d189107fe7b9 Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Wed, 3 Feb 2021 11:13:25 +0100 Subject: [PATCH] Always renew apppasswords on login Else you can end up that you renewed your password (LDAP for example). But they still don't work because you did not use them before you logged in. Signed-off-by: Roeland Jago Douma --- .../Token/PublicKeyTokenProvider.php | 5 ----- .../Token/PublicKeyTokenProviderTest.php | 18 +----------------- 2 files changed, 1 insertion(+), 22 deletions(-) diff --git a/lib/private/Authentication/Token/PublicKeyTokenProvider.php b/lib/private/Authentication/Token/PublicKeyTokenProvider.php index 38551e63b8..a293d2a840 100644 --- a/lib/private/Authentication/Token/PublicKeyTokenProvider.php +++ b/lib/private/Authentication/Token/PublicKeyTokenProvider.php @@ -414,11 +414,6 @@ class PublicKeyTokenProvider implements IProvider { public function updatePasswords(string $uid, string $password) { $this->cache->clear(); - if (!$this->mapper->hasExpiredTokens($uid)) { - // Nothing to do here - return; - } - // Update the password for all tokens $tokens = $this->mapper->getTokenByUser($uid); foreach ($tokens as $t) { diff --git a/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php b/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php index 04e0fdb527..f27100b5d7 100644 --- a/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php +++ b/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php @@ -548,8 +548,7 @@ class PublicKeyTokenProviderTest extends TestCase { IToken::PERMANENT_TOKEN, IToken::REMEMBER); - $this->mapper->expects($this->once()) - ->method('hasExpiredTokens') + $this->mapper->method('hasExpiredTokens') ->with($uid) ->willReturn(true); $this->mapper->expects($this->once()) @@ -564,19 +563,4 @@ class PublicKeyTokenProviderTest extends TestCase { $this->tokenProvider->updatePasswords($uid, 'bar2'); } - - public function testUpdatePasswordsNotRequired() { - $uid = 'myUID'; - - $this->mapper->expects($this->once()) - ->method('hasExpiredTokens') - ->with($uid) - ->willReturn(false); - $this->mapper->expects($this->never()) - ->method('getTokenByUser'); - $this->mapper->expects($this->never()) - ->method('update'); - - $this->tokenProvider->updatePasswords($uid, 'bar2'); - } }