Класс CrudAuthorize
Адаптер авторизации для компонента AuthComponent. Предоставляет возможность авторизации с использованием сопоставлений CRUD. Сопоставления CRUD позволяют преобразовывать действия контроллера в действия Cоздания, Чтения, Удаления и Изменения. Это затем проверяется в компоненте AclComponent как конкретные разрешения.
Например, взяв /posts/index в качестве текущего запроса. По умолчанию для index, выполняется проверка разрешения read. Проверка AclComponent затем выполняется для контроллера posts с разрешением read. Это позволяет создавать системы разрешений, которые больше фокусируются на том, что делается с ресурсами, а не на конкретных выполняемых действиях.
- BaseAuthorize
-
CrudAuthorize
С версии: 2.0
См.: AuthComponent::$authenticate
См.: AclComponent::check()
Авторские права: Авторские права (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Controller/Component/Auth/CrudAuthorize.php
Унаследованные свойства
Краткое описание методов
- __construct() publicНастройка дополнительных значений actionMap, соответствующих настроенным
Routing.prefixes. - _setPrefixMappings() protectedУстанавливает сопоставления CRUD для префиксных маршрутов.
- authorize() publicАвторизация пользователя с использованием сопоставленных действий и компонента AclComponent.
Подробное описание методов
__construct()source public
__construct( ComponentCollection $collection , string $settings array() )
Настройка дополнительных значений actionMap, соответствующих настроенным Routing.prefixes.
Параметры
-
ComponentCollection$collection - Коллекция компонентов из контроллера.
- строка
$settingsнеобязательно массив() - Массив настроек. Этот класс не использует никаких настроек.
Переопределяет
BaseAuthorize::__construct() _setPrefixMappings()source protected
_setPrefixMappings( )
Устанавливает сопоставления CRUD для префиксных маршрутов.
authorize()source public
authorize( array $user , CakeRequest $request )
Авторизация пользователя с использованием сопоставленных действий и компонента AclComponent.
Параметры
- массив
$user - Пользователь для авторизации
-
CakeRequest$request - Запрос, требующий авторизации.
Возвращает
booleanМетоды, унаследованные от BaseAuthorize
action()source public
action( CakeRequest $request , string $path '/:plugin/:controller/:action' )
Получение пути к действию для заданного запроса. В основном используется объектами authorize, которым требуется получить информацию о плагине, контроллере и действии, вызываемом.
Параметры
-
CakeRequest$request - Запрос, для которого нужен путь.
- строка
$pathнеобязательно '/:plugin/:controller/:action' - Формат пути.
Возвращает
строкапуть к действию для заданного запроса.
controller()source public
controller( Controller $controller null )
Доступ к объекту контроллера.
Параметры
-
Controller$controllerнеобязательно null - null для получения, контроллер для установки.
Возвращает
смешанноеИсключения
CakeExceptionmapActions()source public
mapActions( array $map array() )
Сопоставляет действия CRUD с фактическими именами действий. Используется для изменения или получения текущих сопоставленных действий.
Создание дополнительных сопоставлений для стандартной операции CRUD:
$this->Auth->mapActions(array('create' => array('add', 'register')); Или эквивалентно:
$this->Auth->mapActions(array('register' => 'create', 'add' => 'create')); Создание сопоставлений для пользовательских операций CRUD:
$this->Auth->mapActions(array('range' => 'search')); Вы можете использовать пользовательские операции CRUD для создания дополнительных общих разрешений, которые ведут себя как операции CRUD. Для этого потребуются дополнительные столбцы в таблице поиска разрешений. Например, если необходимо дополнительное действие поиска CRUD, нужно будет создать дополнительный столбец '_search' в таблице aros_acos. Аналогично, если необходимо, можно создать пользовательское административное действие CRUD для административных функций.
Параметры
- массив
$mapнеобязательно массив() - Массив сопоставлений или undefined для получения текущих значений.
Возвращает
смешанноетекущие сопоставления или null при установке.
См.
AuthComponent::mapActions()
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.10/class-CrudAuthorize.html