From 13d93f5b25aa3e663146349583a0a8e01b216f7a Mon Sep 17 00:00:00 2001 From: Christoph Wurst Date: Tue, 22 May 2018 08:52:16 +0200 Subject: Make 2FA providers stateful This adds persistence to the Nextcloud server 2FA logic so that the server knows which 2FA providers are enabled for a specific user at any time, even when the provider is not available. The `IStatefulProvider` interface was added as tagging interface for providers that are compatible with this new API. Signed-off-by: Christoph Wurst --- core/Controller/LoginController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'core/Controller/LoginController.php') diff --git a/core/Controller/LoginController.php b/core/Controller/LoginController.php index 2235439d956..7bf2555819d 100644 --- a/core/Controller/LoginController.php +++ b/core/Controller/LoginController.php @@ -302,7 +302,7 @@ class LoginController extends Controller { if ($this->twoFactorManager->isTwoFactorAuthenticated($loginResult)) { $this->twoFactorManager->prepareTwoFactorLogin($loginResult, $remember_login); - $providers = $this->twoFactorManager->getProviders($loginResult); + $providers = $this->twoFactorManager->getProviderSet($loginResult)->getProviders(); if (count($providers) === 1) { // Single provider, hence we can redirect to that provider's challenge page directly /* @var $provider IProvider */ -- cgit v1.2.3