Класс BasicAuthenticate
Адаптер базовой аутентификации для AuthComponent.
Обеспечивает поддержку базовой HTTP-аутентификации для AuthComponent. Базовая аутентификация будет аутентифицировать пользователей по заданной модели userModel и проверять соответствие имени пользователя и паролей.
Использование базовой аутентификации
В массиве компонентов вашего контроллера добавьте auth и необходимые настройки.
public $components = array(
'Auth' => array(
'authenticate' => array('Basic')
)
); Вы также должны установить AuthComponent::$sessionKey = false; в методе beforeFilter() вашего AppController, чтобы предотвратить отправку CakePHP cookie сессии клиенту.
Поскольку HTTP-аутентификация по схеме Basic является бессостоятельной, вам не нужен действие login() в вашем контроллере. Данные учетных данных пользователя будут проверяться при каждом запросе. Если не будут предоставлены действительные учетные данные, этот поставщик аутентификации отправит необходимые заголовки аутентификации, что вызовет диалог входа в браузере/клиенте.
Вы также можете использовать $this->Auth->unauthorizedRedirect = false;. По умолчанию неавторизованные пользователи перенаправляются на URL-адрес ссылки, AuthComponent::$loginAction, или '/'. Если unauthorizedRedirect установлен в false, вместо перенаправления выбрасывается исключение ForbiddenException.
- BaseAuthenticate реализует CakeEventListener
-
BasicAuthenticate
Прямые подклассы
С версии: 2.0
Авторские права: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Controller/Component/Auth/BasicAuthenticate.php
Унаследованные свойства
Краткое описание методов
- __construct() publicКонструктор, завершает конфигурацию базовой аутентификации.
- authenticate() public
Аутентификация пользователя с использованием HTTP-аутентификации. Использует настроенную модель User и пытается выполнить вход с использованием HTTP-аутентификации.
- getUser() publicПолучить пользователя на основе информации в запросе. Используется для бескучной аутентификации для бессостоятельных клиентов.
- loginHeaders() publicГенерация заголовков входа
- unauthenticated() publicОбрабатывает попытку доступа без аутентификации, отправляя соответствующие заголовки входа
Подробное описание методов
__construct()source public
__construct( ComponentCollection $collection , array $settings )
Конструктор, завершает конфигурацию базовой аутентификации.
Параметры
-
ComponentCollection$collection - Коллекция компонентов, используемых в этом запросе.
- массив
$settings - Массив настроек.
Переопределяет
BaseAuthenticate::__construct() authenticate()source public
authenticate( CakeRequest $request , CakeResponse $response )
Аутентификация пользователя с использованием HTTP-аутентификации. Использует настроенную модель User и пытается выполнить вход с использованием HTTP-аутентификации.
Параметры
-
CakeRequest$request - Запрос для аутентификации.
-
CakeResponse$response - Ответ для добавления заголовков.
Возвращает
mixedВ случае неудачи — false, в случае успеха — массив данных пользователя.
getUser()source public
getUser( CakeRequest $request )
Получить пользователя на основе информации в запросе. Используется для бескучной аутентификации для бессостоятельных клиентов.
Параметры
-
CakeRequest$request - Объект запроса.
Возвращает
mixedВ случае неудачи — false, в случае успеха — массив информации о пользователе
Переопределяет
BaseAuthenticate::getUser() loginHeaders()source public
loginHeaders( )
Генерация заголовков входа
Возвращает
stringЗаголовки для входа.
unauthenticated()source public
unauthenticated( CakeRequest $request , CakeResponse $response )
Обрабатывает попытку доступа без аутентификации, отправляя соответствующие заголовки входа
Параметры
-
CakeRequest$request - Объект запроса.
-
CakeResponse$response - Объект ответа.
Выбрасывает
UnauthorizedExceptionПереопределяет
BaseAuthenticate::unauthenticated() Методы, унаследованные от BaseAuthenticate
_findUser()source protected
_findUser( string|array $username , string $password null )
Поиск записи пользователя с использованием стандартных опций.
Параметр $username может быть (строкой)именем пользователя или массивом, содержащим условия для Model::find('first'). Если параметр $password не указан, поле пароля будет присутствовать в возвращаемом массиве.
Вводимые пароли будут хешированы даже в случае, если пользователь не существует. Это помогает смягчить атаки с временной задержкой, которые пытаются найти допустимые имена пользователей.
Параметры
- строка|массив
$username - Имя пользователя/идентификатор или массив условий поиска.
- строка
$passwordoptional null - Пароль, используется только если параметр $username является строкой.
Возвращает
boolean|массивВ случае неудачи — false, в случае успеха — массив данных пользователя.
_password()source protected
_password( string $password )
Хеширование простого текста пароля для соответствия хешированному/зашифрованному паролю в источнике данных.
Устарело
3.0.0 С версии 2.4. Используйте класс PasswordHasher вместо этого.Параметры
- строка
$password - Пароль в простом тексте.
Возвращает
строкаХешированная форма пароля.
implementedEvents()source public
implementedEvents( )
Реализованные события
Возвращает
массивсобытий => обратных вызовов.
Реализация
CakeEventListener::implementedEvents() logout()source public
logout( array $user )
Позволяет подключиться к AuthComponent::logout() и реализовать специализированное поведение выхода из системы.
Все подключенные объекты аутентификации будут вызывать этот метод при выходе пользователя.
Параметры
- массив
$user - Пользователь, который собирается выйти из системы.
passwordHasher()source public
passwordHasher( )
Возврат объекта хешера паролей
Возвращает
AbstractPasswordHasherЭкземпляр хешера паролей
Выбрасывает
CakeExceptionЕсли класс хешера паролей не найден или он не расширяет AbstractPasswordHasher
© 2005–2017 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/2.10/class-BasicAuthenticate.html