Identica
ОфициальныеCredential

Настройки

Все настройки файла providers/Credential/settings.yml.

providers/Credential/settings.yml содержит настройки провайдера Credential. Как они работают вместе, объясняют страницы Пароли и Защита от перебора паролей.

scenario

registration

enabled

Принимаетtrue или false

По умолчаниюtrue

Влияет намогут ли новые игроки регистрироваться через Credential, а аккаунты — переноситься на него

Если false, регистрация отклоняется сообщением провайдера о том, что регистрация отключена.

requireRepeat

Принимаетtrue или false

По умолчаниюtrue

Влияет наподтверждает ли новый игрок пароль, вводя его второй раз

credential

Требования, которым соответствует каждый новый пароль — при регистрации и при смене командой /changepassword. Требование со значением 0 не проверяется. Пробелы запрещены всегда.

minLength

Принимаетнеотрицательное целое число

По умолчанию6

Влияет наминимальную длину пароля

maxLength

Принимаетнеотрицательное целое число

По умолчанию32

Влияет намаксимальную длину пароля

minUpper

Принимаетнеотрицательное целое число

По умолчанию1

Влияет насколько заглавных букв нужно в пароле

minLower

Принимаетнеотрицательное целое число

По умолчанию1

Влияет насколько строчных букв нужно в пароле

minNumber

Принимаетнеотрицательное целое число

По умолчанию1

Влияет насколько цифр нужно в пароле

minSpecial

Принимаетнеотрицательное целое число

По умолчанию1

Влияет насколько символов, кроме букв и цифр, нужно в пароле

scenario:
  registration:
    enabled: true
    requireRepeat: true
    credential:
      minLength: 8
      maxLength: 64
      minUpper: 1
      minLower: 1
      minNumber: 1
      minSpecial: 1

authentication.bruteforce

Для опытных

Подсчитывает неверные пароли и блокирует игрока, если их слишком много. Подчиняется переключателю Sentinel в записи Credential в providers/providers.yml.

maxAttempts

Принимаетнеотрицательное целое число

По умолчанию5

Влияет насколько неверных паролей допускается в пределах lockout.duration

0 отключает защиту.

lockout.enabled

Принимаетtrue или false

По умолчаниюtrue

Влияет наблокируется ли игрок, достигший maxAttempts

Если false, неверные пароли по-прежнему подсчитываются и вызывают предупреждения, но никого не блокируют.

lockout.duration

Для опытных

Принимаетположительную длительность

По умолчанию"5m"

Влияет насколько времени учитывается неверный пароль и сколько длится блокировка

Если длительность нулевая или отрицательная, неверные пароли перестают подсчитываться.

warning.enabled

Принимаетtrue или false

По умолчаниюtrue

Влияет насообщается ли игроку после неверного пароля, сколько попыток у него осталось

warning.thresholdPercentage

Принимаетцелое число от 0 до 100

По умолчанию50

Влияет нас какой доли maxAttempts показывается предупреждение

При maxAttempts: 5 и 50 предупреждение начинается с третьего неверного пароля, после которого остаётся две попытки. Значения вне диапазона от 0 до 100 приводятся к ближайшей границе.

changePassword.requireRepeat

Принимаетtrue или false

По умолчаниюtrue

Влияет натребует ли команда /changepassword <current> <new> [repeat] аргумент repeat

Если true, пропущенный repeat считается несовпадением. Если false, repeat необязателен, но если он указан, он должен совпадать. Синтаксис команды от этой настройки не меняется: чтобы [repeat] больше не предлагался, удалите его из описания использования change-password в providers/Credential/commands.yml, как описано в разделе usage.

cryptography

Как провайдер Credential хеширует пароли. См. Хеширование.

algorithm

Для опытных

Принимает"bcrypt" или "argon2" в любом регистре

По умолчанию"bcrypt"

Влияет накак создаются новые хеши паролей

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

bcrypt читает только первые 72 байта пароля, а всё остальное игнорирует. Символ вне ASCII занимает от двух до четырёх байт, поэтому ограничение может сработать раньше, чем maxLength. У argon2 такого ограничения нет.

autoupgrade

Принимаетtrue или false

По умолчаниюtrue

Влияет напересоздаётся ли хеш, созданный другим алгоритмом, алгоритмом из algorithm, когда его игрок успешно входит

algorithms.bcrypt.cost

Для опытных

Принимаетположительное целое число

По умолчанию12

Влияет накоэффициент сложности новых хешей bcrypt

Увеличение на единицу удваивает время вычисления хеша — и при входе, и при подборе пароля.

algorithms.argon2.iterations

Для опытных

Принимаетположительное целое число

По умолчанию3

Влияет наколичество итераций новых хешей Argon2id

algorithms.argon2.parallelism

Для опытных

Принимаетположительное целое число

По умолчанию1

Влияет настепень параллелизма новых хешей Argon2id

algorithms.argon2.memoryKb

Для опытных

Принимаетположительное целое число

По умолчанию65536

Влияет наобъём памяти в килобайтах, который использует каждый новый хеш Argon2id

Значение 0 или меньше в любом параметре сложности приводит к ошибке хеширования, а вместе с ней — к ошибкам при регистрации и смене пароля.

На этой странице