Класс BaseAuthenticate
Базовый класс аутентификации с общими методами и свойствами.
- Cake\Auth\BaseAuthenticate реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait , Cake\ORM\Locator\LocatorAwareTrait
Прямые подклассы
Косвенные подклассы
Пространство имён: Cake\Auth
Mixin: \Cake\Core\InstanceConfigTrait
Расположение: Auth/BaseAuthenticate.php
Краткое описание свойств
-
$_defaultConfigprotectedЗначение конфигурации по умолчанию для этого объекта.array -
$_needsPasswordRehashprotectedbooleanТребуется ли повторное хеширование пароля пользователя, аутентифицированного этим классом, с помощью другого алгоритма.
- Экземпляр хешера паролей.
$_passwordHasherprotected - Реестр компонентов, используемый для получения дополнительных компонентов.
$_registryprotected
Наследованные свойства
Краткое описание методов
- __construct() publicКонструктор
- _findUser() protectedПоиск записи пользователя по имени пользователя и паролю.
- _query() protectedПолучить объект запроса для извлечения пользователя из базы данных.
- Аутентификация пользователя на основе информации запроса.
- 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
$configoptional [] - Массив конфигурации для использования.
_findUser()source protected
_findUser( string $username , string|null $password = null )
Поиск записи пользователя по имени пользователя и паролю.
Вводимые пароли будут хешироваться даже тогда, когда пользователь не существует. Это помогает снизить риск атак с временной задержкой, пытающихся найти действительные имена пользователей.
Параметры
- string
$username - Имя пользователя/идентификатор.
- string|null
$passwordoptional null Пароль, если не указан, проверка пароля пропущена, и возвращается результат поиска.
Возвращает
boolean|arrayВ случае ошибки возвращается false, в случае успеха - массив данных пользователя.
_query()source protected
_query( string $username )
Получить объект запроса для извлечения пользователя из базы данных.
Параметры
- string
$username - Имя пользователя/идентификатор.
Возвращает
Cake\ORM\Queryauthenticate()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( )
Возвращает, требуется ли повторное хеширование пароля, хранящегося в репозитории для вошедшего пользователя, с помощью другого алгоритма.
Возвращает
booleanpasswordHasher()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если попытка перезаписать существующую конфигурацию
_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\LocatorInterfacesetTableLocator()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
$_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