Identica

features/verification/

Все настройки features/verification/ и настройки для отдельных провайдеров.

features/verification/ содержит файлы верификации: settings.yml, commands.yml и messages.yml. Как ею пользуются игроки, описано в разделе Верификация.

settings.yml

challengeTtl

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

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

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

Если значение слишком мало, медленные игроки теряют запрос; если слишком велико, неотвеченный запрос остаётся открытым дольше, чем нужно.

enrollmentTtl

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

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

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

autoSelectCurrentProvider

Для опытных

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

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

Влияет навыбирается ли только что настроенный метод для провайдера, через которого игрок вошёл

С false игроки выбирают его сами командой /2fa use.

totp

Встроенный метод через приложение-аутентификатор. См. Приложения-аутентификаторы.

displayName

Принимаетстроку

По умолчанию"Authenticator App"

Влияет наназвание метода в сообщениях

Если значение пустое, показывается totp.

issuer

Принимаетстроку

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

Влияет наназвание сервиса, которое приложения-аутентификаторы показывают для аккаунта

labelFormat

Принимаетстроку

По умолчанию"{player}@{providerId}"

Влияет наимя аккаунта, которое показывают приложения-аутентификаторы

{player} — ник игрока, {providerId} — провайдер, через которого он настроил приложение.

digits

Для опытных

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

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

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

Уже настроенные приложения сохраняют прежнее число цифр, поэтому после изменения игроки не смогут войти, пока не настроят приложение заново.

period

Для опытных

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

По умолчанию"30s"

Влияет накак часто меняются коды

Как и digits, изменение не доходит до уже настроенных приложений.

allowedPastWindows

Для опытных

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

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

Влияет насколько предыдущих кодов ещё принимается — для телефонов, у которых отстают часы, и для медленного ввода

Чем больше окон, тем терпимее проверка, но тем дольше принимаются коды.

allowedFutureWindows

Для опытных

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

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

Влияет насколько следующих кодов уже принимается — для телефонов, у которых спешат часы

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

recoveryCodes

Коды, которые игрок вводит вместо кода из приложения, если потерял его. Они показываются один раз при настройке приложения.

enabled

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

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

Влияет наполучают ли игроки коды восстановления

amount

Для опытных

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

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

Влияет насколько кодов восстановления получает игрок

length

Для опытных

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

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

Влияет насколько символов в коде восстановления

groupSize

Для опытных

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

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

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

defaults

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

defaults:
  enabled: true
  required: false
  unavailableSelectionPolicy: KEEP_LOCKED
  methods:
    - id: totp
      enabled: true
      priority: 100

Поля те же, что в настройках для отдельного провайдера ниже.

Для отдельного провайдера

В features.verification записи провайдера в providers/providers.yml. Каждое поле, которое провайдер не указывает, берётся из defaults.

features.verification.enabled

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

По умолчаниюнаследует defaults.enabled (true)

Влияет намогут ли игроки этого провайдера пользоваться верификацией

features.verification.required

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

По умолчаниюнаследует defaults.required (false)

Влияет наобязаны ли игроки этого провайдера пользоваться верификацией

Тогда игроку без метода отказывают при входе.

features.verification.unavailableSelectionPolicy

Принимает"CLEAR_SELECTION" или "KEEP_LOCKED"

По умолчаниюнаследует defaults.unavailableSelectionPolicy (KEEP_LOCKED)

Влияет насохраняется ли выбранный игроком метод, когда провайдер его больше не предлагает

KEEP_LOCKED сохраняет его, CLEAR_SELECTION забывает. В обоих случаях, пока верификация обязательна, во входе отказывают.

features.verification.methods

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

По умолчаниюнаследует defaults.methods

Влияет накакие методы предлагает этот провайдер и в каком порядке

Явно заданный methods: [] не предлагает ни одного. У каждого метода есть поля:

  • id: id метода верификации, например totp
  • enabled: можно ли использовать этот метод
  • priority: порядок, если доступно несколько методов
  • required: собственное required этого метода вместо значения провайдера
  • unavailableSelectionPolicy: собственная политика этого метода вместо политики провайдера

commands.yml и messages.yml

У команд игроков, например /2fa enroll, и у /identica admin 2fa reset те же поля, что и в commands.yml. Коды восстановления показываются, даже если их сообщение очищено, потому что показать их повторно нельзя.

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