function AuthenticationSubscriber::onExceptionAccessDenied

Same name in other branches
  1. 9 core/lib/Drupal/Core/EventSubscriber/AuthenticationSubscriber.php \Drupal\Core\EventSubscriber\AuthenticationSubscriber::onExceptionAccessDenied()
  2. 10 core/lib/Drupal/Core/EventSubscriber/AuthenticationSubscriber.php \Drupal\Core\EventSubscriber\AuthenticationSubscriber::onExceptionAccessDenied()
  3. 11.x core/lib/Drupal/Core/EventSubscriber/AuthenticationSubscriber.php \Drupal\Core\EventSubscriber\AuthenticationSubscriber::onExceptionAccessDenied()

Detect disallowed authentication methods on access denied exceptions.

Parameters

\Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent $event:

File

core/lib/Drupal/Core/EventSubscriber/AuthenticationSubscriber.php, line 129

Class

AuthenticationSubscriber
Authentication subscriber.

Namespace

Drupal\Core\EventSubscriber

Code

public function onExceptionAccessDenied(GetResponseForExceptionEvent $event) {
    if (isset($this->filter) && $event->isMasterRequest()) {
        $request = $event->getRequest();
        $exception = $event->getException();
        if ($exception instanceof AccessDeniedHttpException && $this->authenticationProvider
            ->applies($request) && !$this->filter
            ->appliesToRoutedRequest($request, TRUE)) {
            $event->setException(new AccessDeniedHttpException('The used authentication method is not allowed on this route.', $exception));
        }
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.