Spec-Zone.ru › CakePHP 3.6

Класс BaseAuthenticate

Базовый класс аутентификации с общими методами и свойствами.

Cake\Auth\BaseAuthenticate реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait , Cake\ORM\Locator\LocatorAwareTrait

Прямые подклассы

  • Cake\Auth\BasicAuthenticate
  • Cake\Auth\FormAuthenticate

Косвенные подклассы

  • Cake\Auth\DigestAuthenticate
Абстрактный
Пространство имён: Cake\Auth
Mixin: \Cake\Core\InstanceConfigTrait
Расположение: Auth/BaseAuthenticate.php

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

  • $_defaultConfig protected
    array
    Значение конфигурации по умолчанию для этого объекта.
  • $_needsPasswordRehash protected
    boolean

    Требуется ли повторное хеширование пароля пользователя, аутентифицированного этим классом, с помощью другого алгоритма.

  • $_passwordHasher protected
    Cake\Auth\AbstractPasswordHasher
    Экземпляр хешера паролей.
  • $_registry protected
    Cake\Controller\ComponentRegistry
    Реестр компонентов, используемый для получения дополнительных компонентов.

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

  • _config, _configInitialized _tableLocator

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

  • __construct() public
    Конструктор
  • _findUser() protected
    Поиск записи пользователя по имени пользователя и паролю.
  • _query() protected
    Получить объект запроса для извлечения пользователя из базы данных.
  • authenticate() abstract public
    Аутентификация пользователя на основе информации запроса.
  • getUser() public

    Получить пользователя на основе информации в запросе. В основном используется бессотоянными системами аутентификации, такими как basic и digest auth.

  • implementedEvents() public
    Возвращает список всех событий, на которые будет подписываться этот класс аутентификации.
  • needsPasswordRehash() public

    Возвращает, требуется ли повторное хеширование пароля, хранящегося в репозитории для вошедшего пользователя, с помощью другого алгоритма.

  • passwordHasher() public
    Возвращает объект хеширования паролей
  • unauthenticated() public

    Обработка неудачных попыток доступа без аутентификации. В реализации допустимыми значениями возврата могут быть:

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

__construct()source public

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

Конструктор

Параметры

Cake\Controller\ComponentRegistry $registry
Реестр компонентов, используемый в этом запросе.
array $config optional []
Массив конфигурации для использования.

_findUser()source protected

_findUser( string $username , string|null $password = null )

Поиск записи пользователя по имени пользователя и паролю.

Вводимые пароли будут хешироваться даже тогда, когда пользователь не существует. Это помогает снизить риск атак с временной задержкой, пытающихся найти действительные имена пользователей.

Параметры

string $username
Имя пользователя/идентификатор.
string|null $password optional null

Пароль, если не указан, проверка пароля пропущена, и возвращается результат поиска.

Возвращает

boolean|array
В случае ошибки возвращается false, в случае успеха - массив данных пользователя.

_query()source protected

_query( string $username )

Получить объект запроса для извлечения пользователя из базы данных.

Параметры

string $username
Имя пользователя/идентификатор.

Возвращает

Cake\ORM\Query

authenticate()source abstract public

authenticate( Cake\Http\ServerRequest $request , Cake\Http\Response $response )

Аутентификация пользователя на основе информации запроса.

Параметры

Cake\Http\ServerRequest $request
Запрос для получения информации об аутентификации.
Cake\Http\Response $response
Объект ответа, которому могут быть добавлены заголовки.

Возвращает

mixed
В случае ошибки возвращается false, в случае успеха - массив данных пользователя.

getUser()source public

getUser( Cake\Http\ServerRequest $request )

Получить пользователя на основе информации в запросе. В основном используется бессотоянными системами аутентификации, такими как basic и digest auth.

Параметры

Cake\Http\ServerRequest $request
Объект запроса.

Возвращает

mixed
В случае ошибки false, в случае успеха - массив информации о пользователе.

implementedEvents()source public

implementedEvents( )

Возвращает список всех событий, на которые будет подписываться этот класс аутентификации.

Класс аутентификации может подписываться на следующие события, генерируемые AuthComponent:

  • Auth.afterIdentify - Вызывается после того, как пользователь был идентифицирован с помощью одного из настроенных классов аутентификации. Функция обратного вызова должна иметь сигнатуру, такую как afterIdentify(Event $event, array $user) , когда $user - это найденная запись пользователя.

  • Auth.logout - Вызывается при вызове AuthComponent::logout(). Функция обратного вызова должна иметь сигнатуру, такую как logout(Event $event, array $user) , где $user - пользователь, который собирается быть разлогинен.

Возвращает

array
Список событий, на которые подписывается этот класс. По умолчанию [].

Реализация

Cake\Event\EventListenerInterface::implementedEvents()

needsPasswordRehash()source public

needsPasswordRehash( )

Возвращает, требуется ли повторное хеширование пароля, хранящегося в репозитории для вошедшего пользователя, с помощью другого алгоритма.

Возвращает

boolean

passwordHasher()source public

passwordHasher( )

Возвращает объект хеширования паролей

Возвращает

Cake\Auth\AbstractPasswordHasher
Экземпляр хешера паролей

Исключение

RuntimeException

Если класс хеширования паролей не найден или он не наследуется от AbstractPasswordHasher


unauthenticated()source public

unauthenticated( Cake\Http\ServerRequest $request , Cake\Http\Response $response )

Обработка неудачных попыток доступа без аутентификации. В реализации допустимыми значениями возврата могут быть:

  • Null - Нет действий, AuthComponent должен вернуть соответствующий ответ.
  • Cake\Http\Response - Объект ответа, который заставит AuthComponent просто вернуть этот ответ.

Параметры

Cake\Http\ServerRequest $request
Объект запроса.
Cake\Http\Response $response
Объект ответа.

Методы, используемые из Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

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

Параметры

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

Исключение

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

_configRead()source protected

_configRead( string|null $key )

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

Параметры

string|null $key
Ключ для считывания.

Возвращает

mixed

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge = false )

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

Параметры

string|array $key
Ключ для записи.
mixed $value
Значение для записи.
boolean|string $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']);

Устарело

3.4.0 используйте setConfig()/getConfig() вместо этого.

Параметры

string|array|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->configShallow('key', $value);

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

$this->configShallow('some.nested.key', $value);

Обновление нескольких параметров конфигурации одновременно:

$this->configShallow(['one' => 'value', 'another' => 'value']);

Параметры

string|array $key
Ключ для установки или массив всей конфигурации.
mixed|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');

Параметры

string|null $key необязательно null
Ключ для получения или null для всей конфигурации.
mixed $default необязательно null
Значение, возвращаемое, когда ключ не существует.

Возвращает

mixed
Значение конфигурации.

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']);

Параметры

string|array $key
Ключ для установки или массив всей конфигурации.
mixed|null $value необязательно null
Значение для установки.
boolean $merge необязательно true
Выполнять рекурсивное слияние или перезаписывать существующую конфигурацию, по умолчанию истинно.

Возвращает


$this

Исключения

Cake\Core\Exception\Exception
При попытке установить невалидный ключ.

Методы, используемые из Cake\ORM\Locator\LocatorAwareTrait

getTableLocator()source public

getTableLocator( )

Получает локатор таблиц.

Возвращает

Cake\ORM\Locator\LocatorInterface

setTableLocator()source public

setTableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator )

Устанавливает локатор таблиц.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator
Экземпляр LocatorInterface.

Возвращает


$this

tableLocator()source public устарело

tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator = null )

Устанавливает локатор таблиц. Если параметры не переданы, вернет текущий используемый локатор.

Устарело

3.5.0 Используйте getTableLocator()/setTableLocator() вместо этого.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator необязательно null
Экземпляр LocatorInterface.

Возвращает

Cake\ORM\Locator\LocatorInterface

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

$_defaultConfigsource

protected array

Параметры конфигурации по умолчанию для этого объекта.

  • fields Поля для идентификации пользователя.
  • userModel Псевдоним таблицы пользователей, по умолчанию Users.
  • finder Метод поиска для извлечения записи пользователя. По умолчанию 'all'. Можно установить имя метода поиска как строку или массив, где ключ - имя метода поиска, а значение - массив, передаваемый в Table::find() опции. Например: ['finderName' => ['some_finder_option' => 'some_value']]
  • passwordHasher Класс хэширования паролей. Может быть строкой, определяющей имя класса, или массивом, содержащим className ключ, а все остальные ключи будут переданы как параметры конфигурации в класс. По умолчанию 'Default'.
  • Опции scope и contain устарели с версии 3.1. Используйте пользовательские методы поиска для изменения запроса извлечения записи пользователя.
[
    'fields' => [
        'username' => 'username',
        'password' => 'password'
    ],
    'userModel' => 'Users',
    'scope' => [],
    'finder' => 'all',
    'contain' => null,
    'passwordHasher' => 'Default'
]

$_needsPasswordRehashsource

protected boolean

Требуется ли повторное хэширование пароля пользователя, аутентифицированного этим классом.

false

$_passwordHashersource

protected Cake\Auth\AbstractPasswordHasher

Экземпляр хэширователя паролей.

$_registrysource

protected Cake\Controller\ComponentRegistry

Регистр компонентов, используется для получения дополнительных компонентов.

© 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.6/class-Cake.Auth.BaseAuthenticate.html

Spec-Zone.ru

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