Класс BaseAuthenticate
Базовый класс аутентификации с общими методами и свойствами.
- Cake\Auth\BaseAuthenticate реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait , Cake\ORM\Locator\LocatorAwareTrait
Прямые подклассы
Косвенные подклассы
Краткое описание свойств
-
$_defaultConfigprotectedЗначения конфигурации по умолчанию для данного объекта.array -
$_needsPasswordRehashprotectedbooleanТребуется ли повторное хеширование пароля пользователя, аутентифицированного этим классом, с помощью другого алгоритма.
- Экземпляр хешера паролей.
$_passwordHasherprotected - Регистр компонентов, используемый для получения других компонентов.
$_registryprotected
Унаследованные свойства
Краткое описание методов
- __construct() publicКонструктор
- _findUser() protectedПоиск записи пользователя по имени пользователя и паролю.
- _query() protectedПолучение объекта запроса для извлечения пользователя из базы данных.
- Аутентификация пользователя на основе информации запроса.
- getUser() public
Получение пользователя на основе информации в запросе. В основном используется бессостоятельными системами аутентификации, такими как basic и digest.
- implementedEvents() publicВозвращает список всех событий, на которые будет подписываться этот класс аутентификации.
- needsPasswordRehash() public
Возвращает, требует ли хранящийся в репозитории пароль вошедшего пользователя повторного хеширования с помощью другого алгоритма.
- passwordHasher() publicВозвращает объект хеширования паролей
- unauthenticated() public
Обработка попытки доступа без аутентификации. В реализации допустимыми значениями возврата являются:
Подробное описание методов
__construct()source public
__construct( Cake\Controller\ComponentRegistry $registry , array $config = [] )
Конструктор
Параметры
-
Cake\Controller\ComponentRegistry$registry - Регистр компонентов, используемый в этом запросе.
- массив
$configнеобязательно [] - Массив конфигурации для использования.
_findUser()source protected
_findUser( string $username , string|null $password = null )
Поиск записи пользователя по имени пользователя и паролю.
Вводимые пароли будут хешироваться, даже если пользователя не существует. Это помогает смягчить атаки с временной задержкой, которые пытаются найти допустимые имена пользователей.
Параметры
- строка
$username - Имя пользователя/идентификатор.
- строка|null
$passwordнеобязательно null Пароль, если он не указан, проверка пароля пропускается, и возвращается результат поиска.
Возвращает
boolean|массивВ случае ошибки возвращается false, иначе массив данных пользователя.
_query()source protected
_query( string $username )
Получение объекта запроса для извлечения пользователя из базы данных.
Параметры
- строка
$username - Имя пользователя/идентификатор.
Возвращает
Cake\ORM\Queryauthenticate()source abstract public
authenticate( Cake\Http\ServerRequest $request , Cake\Http\Response $response )
Аутентификация пользователя на основе информации запроса.
Параметры
-
Cake\Http\ServerRequest$request - Запрос для получения информации об аутентификации.
-
Cake\Http\Response$response - Объект ответа, которому могут быть добавлены заголовки.
Возвращает
смешанный типВ случае ошибки возвращается false, иначе массив данных пользователя в случае успеха.
getUser()source public
getUser( Cake\Http\ServerRequest $request )
Получение пользователя на основе информации в запросе. В основном используется бессостоятельными системами аутентификации, такими как basic и digest.
Параметры
-
Cake\Http\ServerRequest$request - Объект запроса.
Возвращает
смешанный типВ случае ошибки возвращается false, иначе массив информации о пользователе
implementedEvents()source public
implementedEvents( )
Возвращает список всех событий, на которые будет подписываться этот класс аутентификации.
Класс аутентификации может подписываться на следующие события, генерируемые компонентом Auth:
Auth.afterIdentify- Срабатывает после того, как пользователь был идентифицирован с помощью одного из настроенных классов аутентификации. Функция обратного вызова должна иметь сигнатуру, подобнуюafterIdentify(Event $event, array $user), когда$userявляется идентифицированной записью пользователя.Auth.logout- Срабатывает при вызове AuthComponent::logout(). Функция обратного вызова должна иметь сигнатуру, подобнуюlogout(Event $event, array $user), где$user— пользователь, который собирается выйти из системы.
Возвращает
массивСписок событий, на которые подписывается этот класс. По умолчанию
[].Реализация
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 - Никаких действий не выполнено, компонент Auth должен вернуть соответствующий ответ.
- Cake\Http\Response - Объект ответа, который заставит компонент Auth просто вернуть этот ответ.
Параметры
-
Cake\Http\ServerRequest$request - Объект запроса.
-
Cake\Http\Response$response - Объект ответа.
Методы, используемые из 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 - Значение для записи.
- логическое значение|строка
$mergeнеобязательно false True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.
Исключения
Cake\Core\Exception\Exceptionпри попытке перезаписи существующей конфигурации
config()source public deprecated
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 - Значение для установки.
- логическое значение
$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 - Значение для установки.
- логическое значение
$mergeнеобязательно true - Производить рекурсивное слияние или перезапись существующей конфигурации, по умолчанию 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 deprecated
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 массив
Значения конфигурации по умолчанию для этого объекта.
-
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 логическое значение
Требуется ли перехеширование пароля для аутентифицированного пользователя с помощью другого алгоритма.
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.8/class-Cake.Auth.BaseAuthenticate.html