Spec-Zone.ru › CakePHP 3.2

Класс BaseAuthenticate

Базовый класс аутентификации с общими методами и свойствами.

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

Прямые подклассы

  • Cake\Auth\BasicAuthenticate
  • Cake\Auth\FormAuthenticate

Косвенные подклассы

  • Cake\Auth\DigestAuthenticate
Абстрактный
Пространство имён: Cake\Auth
Расположение: Auth/BaseAuthenticate.php

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

  • $_defaultConfig protected
    array
    Значения конфигурации по умолчанию для этого объекта.
  • $_needsPasswordRehash protected
    boolean

    Требуется ли повторное хеширование пароля пользователя, аутентифицированного этим классом, с помощью другого алгоритма.

  • $_passwordHasher protected
    Cake\Auth\AbstractPasswordHasher
    Экземпляр хешера паролей.
  • $_registry protected
    Cake\Controller\ComponentRegistry
    Регистр компонентов, используемый для получения дополнительных компонентов.

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

  • _config, _configInitialized

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

  • __construct() public
    Конструктор
  • _findUser() protected
    Найти запись пользователя по предоставленному имени пользователя и паролю.
  • _query() protected
    Получить объект запроса для извлечения пользователя из базы данных.
  • authenticate() abstract public
    Аутентифицировать пользователя на основе информации запроса.
  • getUser() public

    Получить пользователя на основе информации в запросе. В основном используется бесстойными системами аутентификации, такими как базовая и digest аутентификация.

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

authenticate()source abstract public

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

Аутентифицировать пользователя на основе информации запроса.

Параметры

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

Возвращает

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

getUser()source public

getUser( Cake\Network\Request $request )

Получить пользователя на основе информации в запросе. В основном используется бесстойными системами аутентификации, такими как базовая и digest аутентификация.

Параметры

Cake\Network\Request $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( )

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

Возвращает

boolean

passwordHasher()source public

passwordHasher( )

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

Возвращает

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

Исключения

RuntimeException

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


unauthenticated()source public

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

Обработка неудачной попытки доступа без аутентификации. В реализации допустимыми возвращаемыми значениями могут быть:

  • Null - Никаких действий не выполняется, AuthComponent должен вернуть соответствующий ответ.
  • Cake\Network\Response - Объект ответа, который заставит AuthComponent просто вернуть этот ответ.

Параметры

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

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

_configDelete()source protected

_configDelete( string $key )

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

Параметры

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

Исключения

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

_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

Истина для рекурсивного слияния, '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 Сам объект.

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

$_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

$_passwordHashersource

protected Cake\Auth\AbstractPasswordHasher

Экземпляр хэшировщика паролей.

$_registrysource

protected Cake\Controller\ComponentRegistry

Регистр компонентов, используемый для получения других компонентов.

© 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/3.2/class-Cake.Auth.BaseAuthenticate.html

Spec-Zone.ru

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