Spec-Zone.ru › CakePHP 3.7

Класс BaseAuthenticate

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

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

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

  • 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 _tableLocator

Резюме методов

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

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

  • 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\Http\ServerRequest $request , Cake\Http\Response $response )

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

Параметры

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

Возвращаемое значение

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

getUser()source public

getUser( Cake\Http\ServerRequest $request )

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

Параметры

Cake\Http\ServerRequest $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\Http\ServerRequest $request , Cake\Http\Response $response )

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

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

Параметры

Cake\Http\ServerRequest $request
Объект запроса.
Cake\Http\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

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

Выбрасывает

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

config()source public deprecated

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

Устарело

3.4.0 используйте setConfig()/getConfig() вместо этого.

Параметры

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

Возвращает

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

Выбрасывает

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

configShallow()source public

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

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

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

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

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

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

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

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

Параметры

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

Возвращает


$this

getConfig()source public

getConfig( string|null $key = null , mixed $default = null )

Возвращает конфигурацию.

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

Чтение всей конфигурации:

$this->getConfig();

Чтение определенного значения:

$this->getConfig('key');

Чтение вложенного значения:

$this->getConfig('some.nested.key');

Чтение со значением по умолчанию:

$this->getConfig('some-key', 'default-value');

Параметры

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

Возвращает

mixed
Значение конфигурации.

setConfig()source public

setConfig( string|array $key , mixed|null $value = null , boolean $merge = true )

Устанавливает конфигурацию.

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

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

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

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

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

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

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

Параметры

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

Возвращает


$this

Выбрасывает

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

Методы, используемые из Cake\ORM\Locator\LocatorAwareTrait

getTableLocator()source public

getTableLocator( )

Возвращает локализователь таблиц.

Возвращает

Cake\ORM\Locator\LocatorInterface

setTableLocator()source public

setTableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator )

Устанавливает локализователь таблиц.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator
Экземпляр LocatorInterface.

Возвращает


$this

tableLocator()source public deprecated

tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator = null )

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

Устарело

3.5.0 Используйте getTableLocator()/setTableLocator() вместо этого.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator необязательно null
Экземпляр LocatorInterface.

Возвращает

Cake\ORM\Locator\LocatorInterface

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

$_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–present 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.7/class-Cake.Auth.BaseAuthenticate.html

Spec-Zone.ru

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