Improve provider check

Check if there is a provider missing.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
This commit is contained in:
Lukas Reschke 2021-07-21 09:58:17 +02:00 committed by backportbot[bot]
parent 81e9495c51
commit 9877075c47

View file

@ -100,7 +100,11 @@ class TwoFactorMiddleware extends Middleware {
if ($controller instanceof ALoginSetupController
&& $this->userSession->getUser() !== null
&& $this->twoFactorManager->needsSecondFactor($this->userSession->getUser())) {
return;
$providers = $this->twoFactorManager->getProviderSet($this->userSession->getUser());
if ($providers->getProviders() === [] && !$providers->isProviderMissing()) {
return;
}
}
if ($controller instanceof LoginController && $methodName === 'logout') {