Класс WeakPasswordHasher
Класс хеширования паролей, использующий слабые алгоритмы хеширования. Этот класс предназначен только для использования со старыми базами данных, где пароли ещё не мигрированы на более сильный алгоритм.
Краткое описание свойств
- $_config protected
array<string, mixed>Конфигурация во время выполнения
- $_configInitialized protected
boolУказывает, была ли свойство config уже настроено по умолчанию
- $_defaultConfig protected
array<string, mixed>Конфигурация по умолчанию для этого объекта.
Краткое описание методов
-
__construct() public
Конструктор
-
_configDelete() protected
Удаляет один ключ конфигурации.
-
_configRead() protected
Считывает ключ конфигурации.
-
_configWrite() protected
Записывает ключ конфигурации.
-
check() public
Проверка хеша. Генерирует хеш для введенного пользователем пароля и сравнивает его с существующим хешем.
-
configShallow() public
Объединяет предоставленную конфигурацию с существующей. В отличие от
config(), которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение. -
getConfig() public
Возвращает конфигурацию.
-
getConfigOrFail() public
Возвращает конфигурацию для данного ключа.
-
hash() public
Генерирует хеш пароля.
-
needsRehash() public
Возвращает true, если пароль необходимо перехешировать, так как он был создан с использованием чего-либо, кроме паролей, сгенерированных этим классом.
-
setConfig() public
Устанавливает конфигурацию.
Подробное описание методов
__construct() public
__construct(array<string, mixed> $config = [])
Конструктор
Параметры
-
array<string, mixed>$config optional
_configDelete() protected
_configDelete(string $key): void
Удаляет один ключ конфигурации.
Параметры
-
string$key Ключ для удаления.
Возвращает
voidИсключения
Cake\Core\Exception\CakeExceptionесли пытаетесь перезаписать существующую конфигурацию
_configRead() protected
_configRead(string|null $key): mixed
Считывает ключ конфигурации.
Параметры
-
string|null$key Ключ для считывания.
Возвращает
mixed_configWrite() protected
_configWrite(array<string, mixed>|string $key, mixed $value, string|bool $merge = false): void
Записывает ключ конфигурации.
Параметры
-
array<string, mixed>|string$key Ключ для записи.
-
mixed$value Значение для записи.
-
string|bool$merge optional True для рекурсивного объединения, 'shallow' для простого объединения, false для перезаписи, по умолчанию false.
Возвращает
voidИсключения
Cake\Core\Exception\CakeExceptionесли пытаетесь перезаписать существующую конфигурацию
check() public
check(string $password, string $hashedPassword): bool
Проверка хеша. Генерирует хеш для введенного пользователем пароля и сравнивает его с существующим хешем.
Параметры
-
string$password Пароль в виде обычного текста для хеширования.
-
string$hashedPassword Существующий хешированный пароль.
Возвращает
boolconfigShallow() public
configShallow(array<string, mixed>|string $key, mixed|null $value = null): $this
Объединяет предоставленную конфигурацию с существующей. В отличие от config() которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.
Установка конкретного значения:
$this->configShallow('key', $value); Установка вложенного значения:
$this->configShallow('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Параметры
-
array<string, mixed>|string$key Ключ для установки или массив конфигураций.
-
mixed|null$value optional Значение для установки.
Возвращает
$thisgetConfig() public
getConfig(string|null $key = null, mixed $default = null): mixed
Возвращает конфигурацию.
Использование
Чтение всей конфигурации:
$this->getConfig();
Чтение конкретного значения:
$this->getConfig('key'); Чтение вложенного значения:
$this->getConfig('some.nested.key'); Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value'); Параметры
-
string|null$key optional Ключ для получения или null для всей конфигурации.
-
mixed$default optional Возвращаемое значение, если ключ не существует.
Возвращает
mixedgetConfigOrFail() public
getConfigOrFail(string $key): mixed
Возвращает конфигурацию для данного ключа.
Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.
Параметры
-
string$key Ключ для получения.
Возвращает
mixedИсключения
InvalidArgumentExceptionhash() public
hash(string $password): string|false
Генерирует хеш пароля.
Параметры
-
string$password
Возвращает
string|falseneedsRehash() public
needsRehash(string $password): bool
Возвращает true, если пароль необходимо перехешировать, так как он был создан с использованием чего-либо, кроме паролей, сгенерированных этим классом.
По умолчанию возвращает true, так как единственная реализация, на которую должны полагаться пользователи, — это реализация по умолчанию в PHP 5.5+ или любой совместимой библиотеке.
Параметры
-
string$password Пароль для проверки.
Возвращает
boolsetConfig() public
setConfig(array<string, mixed>|string $key, mixed|null $value = null, bool $merge = true): $this
Устанавливает конфигурацию.
Использование
Установка конкретного значения:
$this->setConfig('key', $value); Установка вложенного значения:
$this->setConfig('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Параметры
-
array<string, mixed>|string$key Ключ для установки или массив конфигураций.
-
mixed|null$value optional Значение для установки.
-
bool$merge optional Выполнять рекурсивное объединение или перезаписывать существующую конфигурацию, по умолчанию true.
Возвращает
$thisИсключения
Cake\Core\Exception\CakeExceptionПри попытке установить недействительный ключ.
Подробное описание свойств
$_config protected
Конфигурация во время выполнения
Тип
array<string, mixed>$_configInitialized protected
Указывает, была ли конфигурация уже настроена значениями по умолчанию
Тип
bool$_defaultConfig protected
Конфигурация по умолчанию для этого объекта.
Эти значения объединяются с предоставленной пользователем конфигурацией при использовании объекта.
Тип
array<string, mixed>
© 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/4.3/class-Cake.Auth.WeakPasswordHasher.html