Класс ControllerAuthorize
Адаптер авторизации для AuthComponent. Предоставляет возможность авторизации с помощью обратного вызова контроллера. Метод isAuthorized() вашего контроллера должен возвращать boolean значение, указывающее, авторизован ли пользователь.
public function isAuthorized($user)
{
if ($this->request->getParam('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|ArrayAccess $user , Cake\Http\ServerRequest $request )
Проверяет авторизацию пользователя с помощью обратного вызова контроллера.
Параметры
- массив|ArrayAccess
$user - Данные активного пользователя
-
Cake\Http\ServerRequest$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 - Ключ для чтения.
Возвращает
смешанный_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']);
Устарело
3.4.0 используйте setConfig()/getConfig() вместо.Параметры
- строка|массив|null
$keyнеобязательно null - Ключ для получения/установки, или полный массив конфигураций.
- смешанный|null
$valueнеобязательно null - Значение для установки.
- boolean
$mergeнеобязательно true - Рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.
Возвращает
смешанныйЗначение считанной конфигурации, или сам объект при операциях записи.
Выбрасывает
Cake\Core\Exception\ExceptionПри попытке установить недопустимый ключ.
configShallow()source public
configShallow( string|array $key , mixed|null $value null )
Объединяет предоставленную конфигурацию с существующей конфигурацией. В отличие от config() , которая выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.
Установка определённого значения:
$this->configShallow('key', $value); Установка вложенного значения:
$this->configShallow('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив
$key - Ключ для установки, или полный массив конфигураций.
- смешанный|null
$valueнеобязательно null - Значение для установки.
Возвращает
$this
getConfig()source public
getConfig( string|null $key null , mixed $default null )
Возвращает конфигурацию.
Использование
Чтение всей конфигурации:
$this->getConfig();
Чтение определённого значения:
$this->getConfig('key'); Чтение вложенного значения:
$this->getConfig('some.nested.key'); Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value'); Параметры
- строка|null
$keyнеобязательно null - Ключ для получения или null для всей конфигурации.
- смешанный
$defaultнеобязательно null - Возвращаемое значение, когда ключ не существует.
Возвращает
смешанныйЗначение считанной конфигурации.
setConfig()source public
setConfig( string|array $key , mixed|null $value null , boolean $merge true )
Устанавливает конфигурацию.
Использование
Установка определённого значения:
$this->setConfig('key', $value); Установка вложенного значения:
$this->setConfig('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив
$key - Ключ для установки, или полный массив конфигураций.
- смешанный|null
$valueнеобязательно null - Значение для установки.
- boolean
$mergeнеобязательно true - Рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.
Возвращает
$this
Выбрасывает
Cake\Core\Exception\ExceptionПри попытке установить недопустимый ключ.
Подробное описание свойств
© 2005–2018 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/3.5/class-Cake.Auth.ControllerAuthorize.html