Меня попросили внедрить 2FA с кодами электронной почты, как вы получаете из Steam (и многих банков), после того, как некоторое время не заходили в систему.Сначала я думал, что это был бы флаг, который я мог бы включить в конфигурации Devise, но я не могу найти ЛЮБОЕ место в Интернете, где говорится о чем-то подобном.Желаемый процесс будет состоять в том, чтобы сгенерировать и отправить по электронной почте одноразовый блокнот для входа в экран подтверждения.Каждая ссылка, которую я нашел на 2FA с Devise, относится к использованию таких вещей, как SMS или приложение для аутентификации.
Работая в рамках Devise, кажется, что это может сводиться к тому, что время от времени пользователь может не подтверждать,может быть, как через день.Таким образом, в следующий раз, когда они войдут в систему, они получат другое письмо с новой ссылкой, чтобы «повторно» подтвердить вход в систему.Лучшее, что я могу найти - это Warden::Manager.after_authentication
, чтобы установить user.confirmed_at = nil
, но, похоже, это не то, что я хочу.