Класс BaseAuthenticate
Базовый класс аутентификации с общими методами и свойствами.
- BaseAuthenticate реализует CakeEventListener
Прямые подклассы
Косвенные подклассы
Пакет: Cake\Controller\Component\Auth
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Controller/Component/Auth/BaseAuthenticate.php
Краткое описание свойств
- Коллекция компонентов, используемая для получения дополнительных компонентов.
$_Collectionprotected - Экземпляр хэшера паролей.
$_passwordHasherprotected -
$settingspublicНастройки для этого объекта.array
Краткое описание методов
- __construct() publicКонструктор
- _findUser() protectedПоиск записи пользователя с использованием стандартных опций.
- _password() protected
Хеширование простого пароля для соответствия хэшированному/зашифрованному паролю в источнике данных.
- Аутентификация пользователя на основе информации запроса.
- getUser() public
Получение пользователя на основе информации в запросе. В основном используется для систем аутентификации без состояния, таких как basic и digest аутентификация.
- implementedEvents() publicРеализованные события
- logout() public
Позволяет подключиться к AuthComponent::logout() и реализовать специализированное поведение при выходе.
- passwordHasher() publicВозвращает объект хэшера паролей
- unauthenticated() publicОбработка попытки доступа без аутентификации.
Подробное описание методов
__construct()source public
__construct( ComponentCollection $collection , array $settings )
Конструктор
Параметры
-
ComponentCollection$collection - Коллекция компонентов, используемая в этом запросе.
- массив
$settings - Массив настроек для использования.
_findUser()source protected
_findUser( string|array $username , string $password null )
Поиск записи пользователя с использованием стандартных опций.
Параметр $username может быть (строкой) именем пользователя или массивом, содержащим условия для Model::find('first'). Если параметр $password не указан, поле password будет присутствовать в возвращаемом массиве.
Пароли на входе будут хэшированы, даже если пользователь не существует. Это помогает смягчить атаки с временной задержкой, которые пытаются найти допустимые имена пользователей.
Параметры
- строка|массив
$username - Имя пользователя/идентификатор или массив условий поиска.
- строка
$passwordнеобязательно null - Пароль, используется только если параметр $username — строка.
Возвращает
boolean|массивВ случае ошибки возвращает false, в противном случае — массив данных пользователя.
_password()source protected
_password( string $password )
Хеширование простого пароля для соответствия хэшированному/зашифрованному паролю в источнике данных.
Устаревшее
3.0.0 С версии 2.4. Используйте класс PasswordHasher вместо него.Параметры
- строка
$password - Простой текст пароля.
Возвращает
строкаХэшированная форма пароля.
authenticate()source abstract public
authenticate( CakeRequest $request , CakeResponse $response )
Аутентификация пользователя на основе информации запроса.
Параметры
-
CakeRequest$request - Запрос для получения информации об аутентификации.
-
CakeResponse$response - Объект ответа, которому можно добавить заголовки.
Возвращает
смешанный типВ случае ошибки возвращает false, в противном случае — массив данных пользователя.
getUser()source public
getUser( CakeRequest $request )
Получение пользователя на основе информации в запросе. В основном используется для систем аутентификации без состояния, таких как basic и digest аутентификация.
Параметры
-
CakeRequest$request - Объект запроса.
Возвращает
смешанный типВ случае ошибки возвращает false, в противном случае — массив информации о пользователе
implementedEvents()source public
implementedEvents( )
Реализованные события
Возвращает
массивсобытий => обратных вызовов.
Реализация
CakeEventListener::implementedEvents() logout()source public
logout( array $user )
Позволяет подключиться к AuthComponent::logout() и реализовать специализированное поведение при выходе.
Все присоединенные объекты аутентификации будут вызывать этот метод при выходе пользователя.
Параметры
- массив
$user - Пользователь, который собирается выйти.
passwordHasher()source public
passwordHasher( )
Возвращает объект хэшера паролей
Возвращает
AbstractPasswordHasherЭкземпляр хэшера паролей
Исключения
CakeExceptionЕсли класс хэшера паролей не найден или он не расширяет AbstractPasswordHasher
unauthenticated()source public
unauthenticated( CakeRequest $request , CakeResponse $response )
Обработка попытки доступа без аутентификации.
Параметры
-
CakeRequest$request - Объект запроса.
-
CakeResponse$response - Объект ответа.
Возвращает
смешанный типВозвращает true, чтобы указать, что запрос без аутентификации был обработан, и больше действий от AuthComponent не требуется, или void (по умолчанию).
Подробное описание свойств
$_Collectionsource
protected ComponentCollection
Коллекция компонентов, используемая для получения дополнительных компонентов.
$settingssource
public array
Настройки для данного объекта.
-
fieldsПоля, используемые для идентификации пользователя. -
userModelИмя модели пользователя, по умолчанию User. -
userFieldsМассив полей для извлечения из модели User, null для извлечения всех. По умолчанию null. -
scopeДополнительные условия для поиска и аутентификации пользователей, напримерarray('User.is_active' => 1). -
recursiveЗначение рекурсивного ключа, передаваемого в find(). По умолчанию 0. -
containДополнительные модели для хранения в сессии. -
passwordHasherКласс хеширования паролей. Может быть строкой, указывающей имя класса, или массивом, содержащимclassNameключ; любые другие ключи будут переданы как настройки в класс. По умолчанию 'Simple'.
array(
'fields' => array(
'username' => 'username',
'password' => 'password'
),
'userModel' => 'User',
'userFields' => null,
'scope' => array(),
'recursive' => 0,
'contain' => null,
'passwordHasher' => 'Simple'
)
© 2005–2016 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.
http://api.cakephp.org/2.8/class-BaseAuthenticate.html