Spec-Zone.ru › CakePHP 3.3

Класс BasicAuthenticate

Адаптер базовой аутентификации для компонента Auth.

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

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

В массиве компонентов вашего контроллера добавьте auth и необходимую конфигурацию

public $components = [
     'Auth' => [
         'authenticate' => ['Basic']
     ]
 ];

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

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

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

Cake\Auth\BaseAuthenticate реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait
Extended by Cake\Auth\BasicAuthenticate

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

  • Cake\Auth\DigestAuthenticate
Пространство имен: Cake\Auth
Расположение: Auth/BasicAuthenticate.php

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

  • _defaultConfig, _needsPasswordRehash, _passwordHasher, _registry _config, _configInitialized

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

  • authenticate() public

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

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

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

authenticate()source public

authenticate( Cake\Network\Request $request , Cake\Network\Response $response )

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

Параметры

Cake\Network\Request $request
Запрос для аутентификации.
Cake\Network\Response $response
Ответ для добавления заголовков.

Возвращает

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

getUser()source public

getUser( Cake\Network\Request $request )

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

Параметры

Cake\Network\Request $request
Объект запроса.

Возвращает

mixed
В случае неудачи false, в случае успеха - массив информации о пользователе

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

Cake\Auth\BaseAuthenticate::getUser()

loginHeaders()source public

loginHeaders( Cake\Network\Request $request )

Генерация заголовков входа

Параметры

Cake\Network\Request $request
Объект запроса.

Возвращает

string
Заголовки для входа.

unauthenticated()source public

unauthenticated( Cake\Network\Request $request , Cake\Network\Response $response )

Обработка неудачной попытки доступа, отправкой соответствующих заголовков входа

Параметры

Cake\Network\Request $request
Объект запроса.
Cake\Network\Response $response
Объект ответа.

Вызывает

Cake\Network\Exception\UnauthorizedException

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

Cake\Auth\BaseAuthenticate::unauthenticated()

Методы унаследованные от Cake\Auth\BaseAuthenticate

__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\Query

implementedEvents()source public

implementedEvents( )

Возвращает список всех событий, за которыми будет следить этот класс аутентификации.

Класс аутентификации может следить за следующими событиями, которые генерирует компонент Auth:

  • 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( )

Возвращает true, если пароль, хранящийся в хранилище для вошедшего пользователя, требуется перехешировать с помощью другого алгоритма

Возвращает

boolean

passwordHasher()source public

passwordHasher( )

Возвращает объект хеширования пароля

Возвращает

Cake\Auth\AbstractPasswordHasher
Экземпляр хеширования паролей

Вызывает

RuntimeException

Если класс хеширования паролей не найден или он не расширяет AbstractPasswordHasher


Методы, используемые из Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Удаление отдельного ключа конфигурации

Параметры

строка $key
Ключ для удаления.

Вызывает

Cake\Core\Exception\Exception
если пытаетесь перезаписать существующую конфигурацию

_configRead()source protected

_configRead( string|null $key )

Чтение переменной конфигурации

Параметры

строка|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

Истинное значение для рекурсивного слияния, 'shallow' для простого слияния, ложное значение для перезаписи, по умолчанию ложное.

Исключения

Cake\Core\Exception\Exception
при попытке перезаписать существующую конфигурацию

config()source public

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']);

Параметры

string|array|null $key необязательно null
Ключ для получения/установки или полный массив конфигураций.
mixed|null $value необязательно null
Значение для установки.
boolean $merge необязательно true
Выполнять рекурсивное слияние или перезаписывать существующую конфигурацию, по умолчанию истинно.

Возвращает

mixed
Значение конфигурации, которое читается, или сам объект при операциях записи.

Исключения

Cake\Core\Exception\Exception
При попытке установить неверный ключ.

configShallow()source public

configShallow( string|array $key , mixed|null $value null )

Слияние предоставленной конфигурации с существующей конфигурацией. В отличие от config(), которая выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.

Установка определенного значения:

$this->config('key', $value);

Установка вложенного значения:

$this->config('some.nested.key', $value);

Обновление нескольких параметров конфигурации одновременно:

$this->config(['one' => 'value', 'another' => 'value']);

Параметры

string|array $key
Ключ для установки или полный массив конфигураций.
mixed|null $value необязательно null
Значение для установки.

Возвращает


$this Сам объект.

© 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/3.3/class-Cake.Auth.BasicAuthenticate.html

Spec-Zone.ru

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