Spec-Zone.ru › CakePHP 2.8

Класс BasicAuthenticate

Адаптер аутентификации Basic для AuthComponent.

Обеспечивает поддержку аутентификации HTTP Basic для AuthComponent. Basic Auth будет аутентифицировать пользователей по настроенной модели userModel и проверит соответствие имени пользователя и пароля.

Использование Basic Auth

В массиве компонентов вашего контроллера добавьте auth и необходимые настройки.

public $components = array(
    'Auth' => array(
        'authenticate' => array('Basic')
    )
);

Также необходимо установить AuthComponent::$sessionKey = false; в методе beforeFilter() вашего контроллера AppController, чтобы предотвратить отправку CakePHP куки сессии клиенту.

Поскольку HTTP Basic Authentication бессостоятельна, вам не нужен метод login() в вашем контроллере. Учетные данные пользователя будут проверяться при каждом запросе. Если предоставлены некорректные учетные данные, этот поставщик аутентификации отправит необходимые заголовки аутентификации, которые вызовут диалог входа в браузере/клиенте.

Вы также можете использовать $this->Auth->unauthorizedRedirect = false;. По умолчанию неавторизованные пользователи перенаправляются на URL ссылки, AuthComponent::$loginAction, или '/'. Если unauthorizedRedirect установлен в false, вместо перенаправления будет выброшено исключение ForbiddenException.

BaseAuthenticate реализует CakeEventListener
Extended by BasicAuthenticate

Непосредственные подклассы

  • DigestAuthenticate
Пакет: Cake\Controller\Component\Auth
С: 2.0
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Controller/Component/Auth/BasicAuthenticate.php

Унаследованные свойства

  • _Collection, _passwordHasher, settings

Краткое описание методов

  • __construct() public
    Конструктор, завершает настройку для аутентификации basic.
  • authenticate() public

    Аутентификация пользователя с помощью HTTP auth. Будет использовать настроенную модель User и попытается выполнить вход с помощью HTTP auth.

  • getUser() public
    Получение пользователя на основе информации в запросе. Используется для аутентификации без cookie для бессостоятельных клиентов.
  • loginHeaders() public
    Генерация заголовков входа.
  • unauthenticated() public
    Обработка попытки доступа без аутентификации, отправкой соответствующих заголовков входа.

Подробное описание методов

__construct()source public

__construct( ComponentCollection $collection , array $settings )

Конструктор, завершает настройку для аутентификации basic.

Параметры

ComponentCollection $collection
Коллекция компонентов, используемая в этом запросе.
массив $settings
Массив настроек.

Переопределяет

BaseAuthenticate::__construct()

authenticate()source public

authenticate( CakeRequest $request , CakeResponse $response )

Аутентификация пользователя с помощью HTTP auth. Будет использовать настроенную модель User и попытается выполнить вход с помощью HTTP auth.

Параметры

CakeRequest $request
Запрос для аутентификации.
CakeResponse $response
Ответ для добавления заголовков.

Возвращает

mixed
В случае ошибки возвращает false, в случае успеха - массив данных пользователя.

getUser()source public

getUser( CakeRequest $request )

Получение пользователя на основе информации в запросе. Используется для аутентификации без cookie для бессостоятельных клиентов.

Параметры

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
Имя пользователя/идентификатор или массив условий поиска.
строка $password необязательно 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–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-BasicAuthenticate.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API