Класс 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 auth.
- 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|arrayВ случае ошибки возвращается 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 - Объект ответа, которому можно добавить заголовки.
Возвращаемое значение
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 )
Удаляет единственный ключ конфигурации.
Параметры
- строка
$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 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() вместо этого.Параметры
- string|array|null
$keyнеобязательно null - Ключ для получения/установки, или массив конфигурации.
- mixed|null
$valueнеобязательно null - Значение для установки.
- boolean
$mergeнеобязательно true - Выполнять рекурсивное слияние или перезапись существующей конфигурации, по умолчанию 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 - Выполнять рекурсивное слияние или перезапись существующей конфигурации, по умолчанию 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 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.7/class-Cake.Auth.BaseAuthenticate.html