Класс 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 - Возвращаемое значение, если ключ не существует.
Возвращает
смешанныйДанные конфигурации по указанному ключу или 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–present 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.8/class-Cake.Auth.ControllerAuthorize.html