Spec-Zone.ru › CakePHP 2.7

Класс BlowfishAuthenticate

Адаптер аутентификации для AuthComponent. Предоставляет возможность аутентификации с использованием данных POST с использованием хеширования Blowfish. Может быть использован путём настройки AuthComponent для использования его через параметр AuthComponent::$authenticate.

$this->Auth->authenticate = array(
        'Blowfish' => array(
                'scope' => array('User.active' => 1)
        )
)

При конфигурации BlowfishAuthenticate вы можете передать настройки, которые указывают, какие поля, модель и дополнительные условия используются. Для получения дополнительной информации обратитесь к FormAuthenticate::$settings.

Для начального хеширования/создания пароля см. Security::hash(). Помимо того, как пароль первоначально хешируется, BlowfishAuthenticate работает точно так же, как FormAuthenticate.

BaseAuthenticate реализует CakeEventListener
Extended by FormAuthenticate
Extended by BlowfishAuthenticate
Пакет: Cake\Controller\Component\Auth
Устарело: 3.0.0 С версии 2.4. Просто используйте FormAuthenticate с параметром 'passwordHasher' установленным в 'Blowfish'
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
С момента: CakePHP(tm) v 2.3
См.: AuthComponent::$authenticate
Расположение: Cake/Controller/Component/Auth/BlowfishAuthenticate.php

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

__constructsource public

__construct( ComponentCollection $collection , array $settings )

Конструктор. Устанавливает значение passwordHasher по умолчанию как Blowfish

Параметры

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

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

BaseAuthenticate::__construct()

Методы, унаследованные от FormAuthenticate

_checkFieldssource protected

_checkFields( CakeRequest $request , string $model , array $fields )

Проверяет поля, чтобы убедиться, что они предоставлены.

Параметры

CakeRequest $request
Запрос, содержащий информацию для входа.
строка $model
Модель, используемая для проверки входа в систему.
массив $fields
Поля для проверки.

Возвращает

boolean
False, если поля не были предоставлены. True, если они существуют.

authenticatesource public

authenticate( CakeRequest $request , CakeResponse $response )

Аутентифицирует личность, содержащуюся в запросе. Будет использовать settings.userModel, и settings.fields для поиска данных POST, которые используются для поиска совпадающей записи в settings.userModel. Вернёт false, если нет данных POST, отсутствует имя пользователя или пароль, или условия области не выполнены.

Параметры

CakeRequest $request
Запрос, содержащий информацию для входа.
CakeResponse $response
Объект ответа, не используется.

Возвращает

mixed
False при ошибке входа. Массив данных пользователя при успехе.

Методы, унаследованные от BaseAuthenticate

_findUsersource protected

_findUser( string|array $username , string $password null )

Найти запись пользователя с использованием стандартных параметров.

Параметр $username может быть (строковым) именем пользователя или массивом, содержащим условия для Model::find('first'). Если параметр $password не указан, поле password будет присутствовать в возвращаемом массиве.

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

Параметры

строка|массив $username
Имя пользователя/идентификатор или массив условий поиска.
строка $password необязательный null
Пароль, используется только если параметр $username является строкой.

Возвращает

boolean|array
False в случае ошибки, или массив данных пользователя.

_passwordsource protected

_password( string $password )

Хешировать простой пароль, чтобы он соответствовал хешированному/зашифрованному паролю в источнике данных.

Параметры

строка $password
Простой текст пароля.

Возвращает

string
Хешированная форма пароля.

getUsersource public

getUser( CakeRequest $request )

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

Параметры

CakeRequest $request
Объект запроса.

Возвращает

mixed
Either false или массив информации о пользователе

implementedEventssource public

implementedEvents( )

Реализованные события

Возвращает

array
of events => callbacks.

Реализация

CakeEventListener::implementedEvents()

logoutsource public

logout( array $user )

Позволяет подключиться к AuthComponent::logout() и реализовать специальное поведение при выходе.

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

Параметры

массив $user
Пользователь, который собирается выйти.

passwordHashersource public

passwordHasher( )

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

Возвращает

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

Исключение

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

unauthenticatedsource public

unauthenticated( CakeRequest $request , CakeResponse $response )

Обработка попытки доступа без аутентификации.

Параметры

CakeRequest $request
Объект запроса.
CakeResponse $response
Объект ответа.

Возвращает

mixed
True для указания того, что неудачный запрос без аутентификации был обработан, и больше действий AuthComponent не требуется, или пусто (по умолчанию).

Свойства, унаследованные от BaseAuthenticate

$_Collectionsource

protected ComponentCollection

Коллекция компонентов, используемая для получения других компонентов.

$_passwordHashersource

protected AbstractPasswordHasher

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

$settingssource

public массив

Настройки для этого объекта.

  • fields Поля, используемые для идентификации пользователя.
  • userModel Имя модели пользователя, по умолчанию User.
  • userFields Массив полей для извлечения из модели User, null для извлечения всех. По умолчанию null.
  • scope Дополнительные условия, используемые при поиске и аутентификации пользователей, например, array('User.is_active' => 1).
  • recursive Значение рекурсивного ключа, передаваемого в find(). По умолчанию 0.
  • contain Дополнительные модели для хранения в сессии.
  • passwordHasher Класс хеширования паролей. Может быть строкой, определяющей имя класса, или массивом, содержащим ключ className, все остальные ключи будут переданы как настройки в класс. По умолчанию 'Simple'.
array(
    'fields' => array(
        'username' => 'username',
        'password' => 'password'
    ),
    'userModel' => 'User',
    'userFields' => null,
    'scope' => array(),
    'recursive' => 0,
    'contain' => null,
    'passwordHasher' => 'Simple'
)

© 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.7/class-BlowfishAuthenticate.html

Spec-Zone.ru

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