Spec-Zone.ru › CakePHP 3.8

Класс 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.

  • 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|массив
В случае ошибки возвращается 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
Объект ответа, которому могут быть добавлены заголовки.

Возвращает

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

getUser()source public

getUser( Cake\Http\ServerRequest $request )

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

Параметры

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

Возвращает

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

implementedEvents()source public

implementedEvents( )

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

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

  • Auth.afterIdentify - Срабатывает после того, как пользователь был идентифицирован с помощью одного из настроенных классов аутентификации. Функция обратного вызова должна иметь сигнатуру, подобную afterIdentify(Event $event, array $user), когда $user является идентифицированной записью пользователя.

  • Auth.logout - Срабатывает при вызове AuthComponent::logout(). Функция обратного вызова должна иметь сигнатуру, подобную logout(Event $event, array $user), где $user — пользователь, который собирается выйти из системы.

Возвращает

массив
Список событий, на которые подписывается этот класс. По умолчанию [].

Реализация

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 - Никаких действий не выполнено, компонент Auth должен вернуть соответствующий ответ.
  • Cake\Http\Response - Объект ответа, который заставит компонент Auth просто вернуть этот ответ.

Параметры

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

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

_configDelete()source protected

_configDelete( string $key )

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

Параметры

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

Выбрасывает

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

_configRead()source protected

_configRead( string|null $key )

Считывает ключ конфигурации.

Параметры

строка|null $key
Ключ для считывания.

Возвращает

смешанный тип

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge = false )

Записывает ключ конфигурации.

Параметры

строка|массив $key
Ключ для записи.
смешанный $value
Значение для записи.
логическое значение|строка $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() вместо.

Параметры

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

Возвращает

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

Исключения

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

Параметры

строка|массив $key
Ключ для установки или полный массив конфигураций.
смешанный|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');

Параметры

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

Возвращает

смешанный
Данные конфигурации по указанному ключу или null, если ключ не существует.

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

Параметры

строка|массив $key
Ключ для установки или полный массив конфигураций.
смешанный|null $value необязательно null
Значение для установки.
логическое значение $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 массив

Значения конфигурации по умолчанию для этого объекта.

  • 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 логическое значение

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

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

Spec-Zone.ru

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