summaryrefslogtreecommitdiffstats
path: root/lib/private/AppFramework
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2018-11-06 00:44:18 +0100
committerGitHub <noreply@github.com>2018-11-06 00:44:18 +0100
commit411d2dece5b65ac92f508189647df5bf03b005db (patch)
tree7a86213b522ee0ae970837e0b042b9b9585e5cfe /lib/private/AppFramework
parentf350f2e3ec0bb9b06c7c585db0b9e33266f43021 (diff)
parent90c4b7db156c9aee6dc543032eabecc0b4364236 (diff)
downloadnextcloud-server-411d2dece5b65ac92f508189647df5bf03b005db.tar.gz
nextcloud-server-411d2dece5b65ac92f508189647df5bf03b005db.zip
Merge pull request #11786 from nextcloud/feature/password_confirmation_backend
Expose password confirmation capabilities in the user backend
Diffstat (limited to 'lib/private/AppFramework')
-rw-r--r--lib/private/AppFramework/Middleware/Security/PasswordConfirmationMiddleware.php8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/private/AppFramework/Middleware/Security/PasswordConfirmationMiddleware.php b/lib/private/AppFramework/Middleware/Security/PasswordConfirmationMiddleware.php
index 7c1c4595e9a..d752a68cf32 100644
--- a/lib/private/AppFramework/Middleware/Security/PasswordConfirmationMiddleware.php
+++ b/lib/private/AppFramework/Middleware/Security/PasswordConfirmationMiddleware.php
@@ -29,6 +29,7 @@ use OCP\AppFramework\Middleware;
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\ISession;
use OCP\IUserSession;
+use OCP\User\Backend\IPasswordConfirmationBackend;
class PasswordConfirmationMiddleware extends Middleware {
/** @var ControllerMethodReflector */
@@ -70,6 +71,13 @@ class PasswordConfirmationMiddleware extends Middleware {
$user = $this->userSession->getUser();
$backendClassName = '';
if ($user !== null) {
+ $backend = $user->getBackend();
+ if ($backend instanceof IPasswordConfirmationBackend) {
+ if (!$backend->canConfirmPassword($user->getUID())) {
+ return;
+ }
+ }
+
$backendClassName = $user->getBackendClassName();
}