Класс CrudAuthorize
Адаптер авторизации для компонента AuthComponent. Предоставляет возможность авторизации с использованием отображений CRUD. Отображения CRUD позволяют преобразовывать действия контроллера в действия Cоздания, Read, Update, Delete. Это затем проверяется в компоненте AclComponent как специфические разрешения.
Например, принимая /posts/index в качестве текущего запроса. По умолчанию для index, выполняется проверка разрешения read. Проверка AclComponent будет затем выполняться для контроллера posts с разрешением read. Это позволяет создавать системы разрешений, которые больше фокусируются на том, что делается с ресурсами, а не на конкретных посещаемых действиях.
- BaseAuthorize
-
CrudAuthorize
С версии: 2.0
См.: AuthComponent::$authenticate
См.: AclComponent::check()
Авторское право: Copyright (c) Cake Software Foundation, Inc. (http://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 - Коллекция компонентов из контроллера.
- string
$settingsнеобязательно array() - Массив настроек. Этот класс не использует никакие настройки.
Переопределяет
BaseAuthorize::__construct() _setPrefixMappings()source protected
_setPrefixMappings( )
Устанавливает отображения CRUD для маршрутов с префиксом.
authorize()source public
authorize( array $user , CakeRequest $request )
Авторизует пользователя, используя сопоставленные действия и компонент AclComponent.
Параметры
- array
$user - Пользователь для авторизации
-
CakeRequest$request - Запрос, требующий авторизации.
Возвращает
booleanМетоды, унаследованные от BaseAuthorize
action()source public
action( CakeRequest $request , string $path '/:plugin/:controller/:action' )
Получить путь действия для данного запроса. В основном используется объектами authorize, которым требуется получить информацию о плагине, контроллере и действии, вызываемом.
Параметры
-
CakeRequest$request - Запрос, для которого нужен путь.
- string
$pathнеобязательно '/:plugin/:controller/:action' - Формат пути.
Возвращает
stringпуть к действию для данного запроса.
controller()source public
controller( Controller $controller null )
Доступ к объекту контроллера.
Параметры
-
Controller$controllerнеобязательно null - null для получения, контроллер для установки.
Возвращает
mixedИсключения
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 для административных функций, если это необходимо.
Параметры
- array
$mapнеобязательно array() - Массив отображений или неопределенное значение для получения текущих значений.
Возвращает
mixedТекущие отображения или null при установке.
См. также
AuthComponent::mapActions()
© 2005–2016 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.
http://api.cakephp.org/2.8/class-CrudAuthorize.html