Метод Userpass
Метод аутентификации по логину/паролю
Метод авторизации userpass позволяет пользователям проходить аутентификацию в Deckhouse Stronghold с помощью комбинации имени пользователя и пароля.
Комбинации имени пользователя и пароля конфигурируются непосредственно в методе auth
с помощью пути users/
. Этот метод не может считывать имена пользователей и пароли из внешнего источника.
Все вводимые имена пользователей записываются в нижнем регистре, например, Mary и mary - это одна и та же запись.
Конфигурация
Перед тем как пользователи смогут проходить аутентификацию, необходимо предварительно настроить методы аутентификации. Эти шаги обычно выполняются оператором или средством управления конфигурацией.
-
Включите метод аутентификации
userpass
, как представлено ниже:d8 stronghold auth enable userpass
Это позволяет включить метод аутентификации
userpass
по адресуauth/userpass
. Чтобы включить его по другому пути, используйте флаг-path
, как представлено ниже:d8 stronghold auth enable -path=<path> userpass
-
Настройте метод на пользователей, которым разрешена аутентификация:
d8 stronghold write auth/<userpass:path>/users/mitchellh \ password=foo \ policies=admins
В результате создается новый пользователь mitchellh
с паролем foo
, который будет связан с политикой admins
. Это единственная необходимая конфигурация.
Блокировка пользователя
Если пользователь несколько раз подряд предоставит неверные учетные данные, Stronghold на некоторое время прекратит попытки проверить его учетные данные, а вместо этого сразу же вернет ошибку с отказом доступе. Мы называем такое поведение «блокировкой пользователя» (user_lockout
). Время, на которое пользователь будет заблокирован, называется «длительностью блокировки» (lockout_duration
). Пользователь сможет войти в систему после истечения срока блокировки. Количество неудачных попыток входа, после которых пользователь будет заблокирован, называется «порог блокировки» (lockout_threshold
). Счетчик порога блокировки обнуляется через несколько минут без попыток входа или при успешной попытке входа. Время, в течение которого счетчик будет обнулен после отсутствия попыток входа, называется «сброс счетчика блокировки» (lockout_counter_reset
). Это позволяет предотвратить атаки с целью подбора пароля.
Функция блокировки пользователя включена по умолчанию. Значения по умолчанию:
lockout_threshold
- 5 попытокlockout_duration
- 15 минутlockout_counter_reset
- 15 минут.
Функцию блокировки пользователя можно отключить с помощью команды «auth tune», передав значение disable_lockout
true
Этот функционал поддерживается только методами userpass, ldap и approle auth.