Класс ControllerAuthorize
Адаптер авторизации для AuthComponent. Предоставляет возможность авторизации с помощью обратного вызова контроллера. Метод isAuthorized() вашего контроллера должен возвращать boolean для указания авторизован ли пользователь.
public function isAuthorized($user)
{
if ($this->request->param('admin')) {
return $user['role'] === 'admin';
}
return !empty($user);
} Выше приведен простой пример, который будет авторизовывать только пользователей с ролью 'admin' для доступа к маршрутам администрирования.
- Cake\Auth\BaseAuthorize использует Cake\Core\InstanceConfigTrait
-
Cake\Auth\ControllerAuthorize
См.: \Cake\Controller\Component\AuthComponent::$authenticate
Расположение: Auth/ControllerAuthorize.php
Краткое описание свойств
- Контроллер для запроса.
$_Controllerprotected
Унаследованные свойства
Краткое описание методов
- __construct() publicКонструктор
- authorize() publicПроверяет авторизацию пользователя с помощью обратного вызова контроллера.
- controller() public
Получение/установка контроллера, с которым будет работать объект авторизации. Также проверяет, реализован ли метод isAuthorized.
Подробное описание методов
__construct()source public
__construct( Cake\Controller\ComponentRegistry $registry , array $config [] )
Конструктор
Параметры
-
Cake\Controller\ComponentRegistry$registry - Контроллер для данного запроса.
- массив
$configнеобязательно [] - Массив настроек. Этот класс не использует никакие настройки.
Переопределяет
Cake\Auth\BaseAuthorize::__construct() authorize()source public
authorize( array $user , Cake\Network\Request $request )
Проверяет авторизацию пользователя с помощью обратного вызова контроллера.
Параметры
- массив
$user - Данные активного пользователя
-
Cake\Network\Request$request - Экземпляр запроса.
Возвращает
booleancontroller()source public
controller( Cake\Controller\Controller $controller null )
Получение/установка контроллера, с которым будет работать объект авторизации. Также проверяет, реализован ли метод isAuthorized.
Параметры
-
Cake\Controller\Controller$controllerнеобязательно null - null для получения, контроллер для установки.
Возвращает
Cake\Controller\ControllerВыбрасывает
Cake\Core\Exception\ExceptionЕсли контроллер не имеет метода
isAuthorized().Используемые методы из Cake\Core\InstanceConfigTrait
_configDelete()source protected
_configDelete( string $key )
Удаление одного ключа конфигурации
Параметры
- строка
$key - Ключ для удаления.
Выбрасывает
Cake\Core\Exception\Exceptionпри попытке перезаписи существующей конфигурации
_configRead()source protected
_configRead( string|null $key )
Чтение переменной конфигурации
Параметры
- строка|null
$key - Ключ для чтения.
Возвращает
mixed_configWrite()source protected
_configWrite( string|array $key , mixed $value , boolean|string $merge false )
Запись переменной конфигурации
Параметры
- строка|массив
$key - Ключ для записи.
- смешанный
$value - Значение для записи.
- boolean|строка
$mergeнеобязательно false True для рекурсивной слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.
Выбрасывает
Cake\Core\Exception\Exceptionпри попытке перезаписи существующей конфигурации
config()source public
config( string|array|null $key null , mixed|null $value null , boolean $merge true )
Использование
Чтение всей конфигурации:
$this->config();
Чтение определённого значения:
$this->config('key'); Чтение вложенного значения:
$this->config('some.nested.key'); Установка определённого значения:
$this->config('key', $value); Установка вложенного значения:
$this->config('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->config(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив|null
$keyнеобязательно null - Ключ для получения/установки, или весь массив настроек.
- смешанный|null
$valueнеобязательно null - Значение для установки.
- boolean
$mergeнеобязательно true - Выполнять рекурсивное слияние или перезаписывать существующую конфигурацию, по умолчанию true.
Возвращает
mixedЗначение конфигурации, которое считывается, или сам объект при операциях записи.
Выбрасывает
Cake\Core\Exception\ExceptionПри попытке установить неверный ключ.
configShallow()source public
configShallow( string|array $key , mixed|null $value null )
Слияние предоставленной конфигурации с существующей конфигурацией. В отличие от config(), которая выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.
Установка определённого значения:
$this->config('key', $value); Установка вложенного значения:
$this->config('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->config(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив
$key - Ключ для установки, или весь массив настроек.
- смешанный|null
$valueнеобязательно null - Значение для установки.
Возвращает
$this Сам объект.
Подробное описание свойств
© 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/3.2/class-Cake.Auth.ControllerAuthorize.html