Spec-Zone.ru › CakePHP 4.2

Класс ControllerAuthorize

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

public function isAuthorized($user)
 {
     if ($this->request->getParam('admin')) {
         return $user['role'] === 'admin';
     }
     return !empty($user);
 }

Выше приведён простой пример, который будет авторизовывать только пользователей с ролью 'admin' для доступа к маршрутам администратора.

Пространство имён: Cake\Auth
См.: \Cake\Controller\Component\AuthComponent::$authenticate

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

  • $_Controller protected
    Cake\Controller\Controller

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

  • $_config protected
    array

    Конфигурация выполнения

  • $_configInitialized protected
    bool

    Указывает, была ли конфигурация свойств уже настроена по умолчанию

  • $_defaultConfig protected
    array

    Конфигурация по умолчанию для объектов авторизации.

  • $_registry protected
    Cake\Controller\ComponentRegistry

    Экземпляр ComponentRegistry для получения других компонентов.

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

  • __construct()public

    Конструктор

  • _configDelete()protected

    Удаляет один ключ конфигурации.

  • _configRead()protected

    Считывает ключ конфигурации.

  • _configWrite()protected

    Записывает ключ конфигурации.

  • authorize()public

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

  • configShallow()public

    Объединяет предоставленную конфигурацию с существующей. В отличие от config(), которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

  • controller()public

    Получение/установка контроллера, с которым будет работать этот объект авторизации. Также проверяет, что реализован метод isAuthorized.

  • getConfig()public

    Возвращает конфигурацию.

  • getConfigOrFail()public

    Возвращает конфигурацию для указанного ключа.

  • setConfig()public

    Устанавливает конфигурацию.

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

__construct() public

__construct(Cake\Controller\ComponentRegistry $registry, array $config = [])

Конструктор

Параметры

Cake\Controller\ComponentRegistry$registry
array$config необязательно

_configDelete() protected

_configDelete(string $key): void

Удаляет один ключ конфигурации.

Параметры

string$key

Ключ для удаления.

Возвращает

void$br>

Исключения

Cake\Core\Exception\CakeException$br>
если пытаетесь перезаписать существующую конфигурацию

_configRead() protected

_configRead(string|null $key): mixed

Считывает ключ конфигурации.

Параметры

string|null$key

Ключ для чтения.

Возвращает

mixed$br>

_configWrite() protected

_configWrite(string|array $key, mixed $value, bool|string $merge = false): void

Записывает ключ конфигурации.

Параметры

string|array$key

Ключ для записи.

mixed$value

Значение для записи.

bool|string$merge необязательно

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

Возвращает

void$br>

Исключения

Cake\Core\Exception\CakeException$br>
если пытаетесь перезаписать существующую конфигурацию

authorize() public

authorize(arrayArrayAccess $user, Cake\Http\ServerRequest $request): bool

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

Параметры

arrayArrayAccess$user

Данные активного пользователя

Cake\Http\ServerRequest$request

Экземпляр запроса.

Возвращает

bool$br>

Исключения

Cake\Core\Exception\CakeException$br>
Если контроллер не имеет метода `isAuthorized()`.

configShallow() public

configShallow(string|array $key, mixed|null $value = null): $this

Объединяет предоставленную конфигурацию с существующей. В отличие от config(), которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

Установка определенного значения:

$this->configShallow('key', $value);
$p>Установка вложенного значения:
$this->configShallow('some.nested.key', $value);
$p>Обновление нескольких настроек конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
$h4 Параметры
string|array$key

Ключ для установки или весь массив конфигурации.

mixed|null$value необязательно

Значение для установки.

Возвращает

$this$br>

controller() public

controller(Cake\Controller\Controller|null $controller = null): Cake\Controller\Controller

Получение/установка контроллера, с которым будет работать этот объект авторизации. Также проверяет, что реализован метод isAuthorized.

Параметры

Cake\Controller\Controller|null$controller необязательно

null для получения, контроллер для установки.

Возвращает

Cake\Controller\Controller$br>

getConfig() public

getConfig(string|null $key = null, mixed $default = null): mixed

Возвращает конфигурацию.

Использование

Чтение всей конфигурации:

$this->getConfig();
$p>Чтение определенного значения:
$this->getConfig('key');
$p>Чтение вложенного значения:
$this->getConfig('some.nested.key');
$p>Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value');
$h4 Параметры
string|null$key необязательно

Ключ для получения или null для всей конфигурации.

mixed$default необязательно

Возвращаемое значение, когда ключ не существует.

Возвращает

mixed$br>

getConfigOrFail() public

getConfigOrFail(string $key): mixed

Возвращает конфигурацию для указанного ключа.

Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.

Параметры

string$key

Ключ для получения.

Возвращает

mixed$br>

Исключения

InvalidArgumentException$br>

setConfig() public

setConfig(string|array $key, mixed|null $value = null, bool $merge = true): $this

Устанавливает конфигурацию.

Использование

Установка определенного значения:

$this->setConfig('key', $value);
$p>Установка вложенного значения:
$this->setConfig('some.nested.key', $value);
$p>Обновление нескольких настроек конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
$h4 Параметры
string|array$key

Ключ для установки или весь массив конфигурации.

mixed|null$value необязательно

Значение для установки.

bool$merge необязательно

Выполнять рекурсивное объединение или перезапись существующей конфигурации, по умолчанию истинно.

Возвращает

$this$br>

Исключения

Cake\Core\Exception\CakeException$br>
Когда пытаетесь установить недопустимый ключ.

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

$_Controller protected

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

Тип

Cake\Controller\Controller$br>

$_config protected

Конфигурация в реальном времени

Тип

array$br>

$_configInitialized protected

Установлена ли конфигурация свойства значениями по умолчанию

Тип

bool$br>

$_defaultConfig protected

Конфигурация по умолчанию для объектов authorize.

Тип

array$br>

$_registry protected

Экземпляр ComponentRegistry для получения дополнительных компонентов.

Тип

Cake\Controller\ComponentRegistry$br>

© 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/4.2/class-Cake.Auth.ControllerAuthorize.html

Spec-Zone.ru

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