Класс ControllerAuthorize
Адаптер авторизации для AuthComponent. Предоставляет возможность авторизации с использованием обратного вызова контроллера. Метод isAuthorized() вашего контроллера должен возвращать булево значение, указывающее, авторизован ли пользователь.
public function isAuthorized($user) {
if (!empty($this->request->params['admin'])) {
return $user['role'] === 'admin';
}
return !empty($user);
} Вышеприведённое — простое реализация, которая будет авторизовывать только пользователей с ролью 'admin' для доступа к админскому маршрутированию.
- BaseAuthorize
-
ControllerAuthorize
С версии: 2.0
См.: AuthComponent::$authenticate
Авторское право: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение: Cake/Controller/Component/Auth/ControllerAuthorize.php
Унаследованные свойства
Краткое описание методов
- authorize() publicПроверяет авторизацию пользователя с помощью обратного вызова контроллера.
- controller() publicПолучение/установка контроллера, с которым будет работать этот объект авторизации. Также проверяет, реализован ли isAuthorized.
Подробное описание методов
authorize()исходный код public
authorize( array $user , CakeRequest $request )
Проверяет авторизацию пользователя с помощью обратного вызова контроллера.
Параметры
- массив
$user - Активные данные пользователя
-
CakeRequest$request - Экземпляр запроса.
Возвращает
booleancontroller()исходный код public
controller( Controller $controller null )
Получение/установка контроллера, с которым будет работать этот объект авторизации. Также проверяет, реализован ли isAuthorized.
Параметры
-
Controller$controllerнеобязательно null - null для получения, контроллер для установки.
Возвращает
mixedВыбрасывает
CakeExceptionПереопределяет
BaseAuthorize::controller() Методы, унаследованные от BaseAuthorize
__construct()исходный код public
__construct( ComponentCollection $collection , string $settings array() )
Конструктор
Параметры
-
ComponentCollection$collection - Контроллер для этого запроса.
- строка
$settingsнеобязательно массив() - Массив настроек. Этот класс не использует никакие настройки.
action()исходный код public
action( CakeRequest $request , string $path '/:plugin/:controller/:action' )
Получение пути к действию для данного запроса. В основном используется объектами авторизации, которые нуждаются в получении информации о плагине, контроллере и действии, вызываемом.
Параметры
-
CakeRequest$request - Запрос, для которого нужен путь.
- строка
$pathнеобязательно '/:plugin/:controller/:action' - Формат пути.
Возвращает
строкапуть к действию для данного запроса.
mapActions()исходный код 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 для получения текущих значений.
Возвращает
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.
https://api.cakephp.org/2.9/class-ControllerAuthorize.html