interface AccessManagerInterface

Same name in other branches
  1. 8.9.x core/lib/Drupal/Core/Access/AccessManagerInterface.php \Drupal\Core\Access\AccessManagerInterface
  2. 10 core/lib/Drupal/Core/Access/AccessManagerInterface.php \Drupal\Core\Access\AccessManagerInterface
  3. 11.x core/lib/Drupal/Core/Access/AccessManagerInterface.php \Drupal\Core\Access\AccessManagerInterface

Provides an interface for attaching and running access check services.

Hierarchy

Expanded class hierarchy of AccessManagerInterface

All classes that implement AccessManagerInterface

17 files declare their use of AccessManagerInterface
AccessAwareRouter.php in core/lib/Drupal/Core/Routing/AccessAwareRouter.php
ConfigTranslationController.php in core/modules/config_translation/src/Controller/ConfigTranslationController.php
ContextualLinkManager.php in core/lib/Drupal/Core/Menu/ContextualLinkManager.php
CustomPageExceptionHtmlSubscriber.php in core/lib/Drupal/Core/EventSubscriber/CustomPageExceptionHtmlSubscriber.php
DefaultMenuLinkTreeManipulators.php in core/lib/Drupal/Core/Menu/DefaultMenuLinkTreeManipulators.php

... See full list

File

core/lib/Drupal/Core/Access/AccessManagerInterface.php, line 12

Namespace

Drupal\Core\Access
View source
interface AccessManagerInterface {
    
    /**
     * Checks a named route with parameters against applicable access check services.
     *
     * Determines whether the route is accessible or not.
     *
     * @param string $route_name
     *   The route to check access to.
     * @param array $parameters
     *   Optional array of values to substitute into the route path pattern.
     * @param \Drupal\Core\Session\AccountInterface $account
     *   (optional) Run access checks for this account. Defaults to the current
     *   user.
     * @param bool $return_as_object
     *   (optional) Defaults to FALSE.
     *
     * @return bool|\Drupal\Core\Access\AccessResultInterface
     *   The access result. Returns a boolean if $return_as_object is FALSE (this
     *   is the default) and otherwise an AccessResultInterface object.
     *   When a boolean is returned, the result of AccessInterface::isAllowed() is
     *   returned, i.e. TRUE means access is explicitly allowed, FALSE means
     *   access is either explicitly forbidden or "no opinion".
     */
    public function checkNamedRoute($route_name, array $parameters = [], AccountInterface $account = NULL, $return_as_object = FALSE);
    
    /**
     * Execute access checks against the incoming request.
     *
     * @param \Symfony\Component\HttpFoundation\Request $request
     *   The incoming request.
     * @param \Drupal\Core\Session\AccountInterface $account
     *   (optional) Run access checks for this account. Defaults to the current
     *   user.
     * @param bool $return_as_object
     *   (optional) Defaults to FALSE.
     *
     * @return bool|\Drupal\Core\Access\AccessResultInterface
     *   The access result. Returns a boolean if $return_as_object is FALSE (this
     *   is the default) and otherwise an AccessResultInterface object.
     *   When a boolean is returned, the result of AccessInterface::isAllowed() is
     *   returned, i.e. TRUE means access is explicitly allowed, FALSE means
     *   access is either explicitly forbidden or "no opinion".
     */
    public function checkRequest(Request $request, AccountInterface $account = NULL, $return_as_object = FALSE);
    
    /**
     * Checks a route against applicable access check services.
     *
     * Determines whether the route is accessible or not.
     *
     * @param \Drupal\Core\Routing\RouteMatchInterface $route_match
     *   The route match.
     * @param \Drupal\Core\Session\AccountInterface $account
     *   (optional) Run access checks for this account. Defaults to the current
     *   user.
     * @param \Symfony\Component\HttpFoundation\Request $request
     *   Optional, a request. Only supply this parameter when checking the
     *   incoming request, do not specify when checking routes on output.
     * @param bool $return_as_object
     *   (optional) Defaults to FALSE.
     *
     * @return bool|\Drupal\Core\Access\AccessResultInterface
     *   The access result. Returns a boolean if $return_as_object is FALSE (this
     *   is the default) and otherwise an AccessResultInterface object.
     *   When a boolean is returned, the result of AccessInterface::isAllowed() is
     *   returned, i.e. TRUE means access is explicitly allowed, FALSE means
     *   access is either explicitly forbidden or "no opinion".
     */
    public function check(RouteMatchInterface $route_match, AccountInterface $account = NULL, Request $request = NULL, $return_as_object = FALSE);

}

Members

Title Sort descending Modifiers Object type Summary Overrides
AccessManagerInterface::check public function Checks a route against applicable access check services. 1
AccessManagerInterface::checkNamedRoute public function Checks a named route with parameters against applicable access check services. 1
AccessManagerInterface::checkRequest public function Execute access checks against the incoming request. 1

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