Spec-Zone.ru › CakePHP 3.3

Класс ControllerAuthorize

Адаптер авторизации для AuthComponent. Предоставляет возможность авторизации с помощью обратного вызова контроллера. Метод isAuthorized() вашего контроллера должен возвращать булево значение, указывающее, авторизован ли пользователь.

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\Auth
См.: \Cake\Controller\Component\AuthComponent::$authenticate
Расположение: Auth/ControllerAuthorize.php

Краткое описание свойств

  • $_Controller protected
    Cake\Controller\Controller
    Контроллер для запроса.

Унаследованные свойства

  • _defaultConfig, _registry _config, _configInitialized

Краткое описание методов

  • __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\Network\Request $request )

Проверка авторизации пользователя с помощью обратного вызова контроллера.

Параметры

массив|ArrayAccess $user
Данные активного пользователя
Cake\Network\Request $request
Экземпляр запроса.

Возвращает

boolean

controller()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
Ключ для записи.
mixed $value
Значение для записи.
boolean|строка $merge необязательно false

Истина для рекурсивного слияния, «shallow» для простого слияния, ложь для перезаписи, по умолчанию ложь.

Возбуждает

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
Ключ для получения/установки или весь массив конфигураций.
mixed|null $value необязательно null
Значение для установки.
boolean $merge необязательно 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
Ключ для установки или весь массив конфигураций.
mixed|null $value необязательно null
Значение для установки.

Возвращает


$this Объект сам.

Подробное описание свойств

$_Controllersource

protected Cake\Controller\Controller

Контроллер для запроса.

null

© 2005–2017 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.3/class-Cake.Auth.ControllerAuthorize.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API