Jump to main content Jump to doc navigation

modUser::passwordMatches

Кандидат хешируется классом из hash_class через сервис хеширования, после чего результат сравнивается с полем password. Им пользуется changePassword() для проверки старого пароля.

$options накладываются поверх salt самого пользователя, поэтому переданный здесь ключ salt побеждает. Что ещё значимо, решает реализация хеша: modPBKDF2 читает salt, iterations, derived_key_length, algorithm и raw_output, а дефолтный modNative вызывает password_verify() и эти ключи игнорирует. Сервис хеширования не загрузился — метод вернёт false.

Синтаксис

boolean passwordMatches (string $password [, array $options = array()])
  • $password (string) Открытый пароль для сверки с сохранённым хешем.
  • $options (array) Настраиваемые параметры хеширования, зависят от реализации, по умолчанию array().

Пример

$user = $modx->getObject('modUser', array('username' => 'foobar'));

if ($user->passwordMatches('s3cur3d')) {
    echo 'ok';
}

Смотрите также

Support the team building MODX with a monthly donation.

The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.

Backers

  • modmore
  • STERC
  • Digital Penguin
  • Jens Wittmann – Gestaltung & Entwicklung
  • CrewMark
  • Fabian Christen
  • Sepia River Studios
  • Dannevang Digital
  • Alex
  • A. Moreno
  • Chris Fickling
  • Stéphane Jäggi
  • Murray Wood
  • Anton Tarasov
  • JT Skaggs
  • deJaya
  • Lefthandmedia
  • eydolan
  • Following Sea
  • Guido Gallenkamp
  • YJ
  • Raffy
  • Snow Creative
  • Nick Clark
  • Guest
  • Helen
  • krisznet
  • Yanni
  • Richard

Budget

$194 per month—let's make that $500!

Learn more