Как сделать двухфакторную авторизацию через email?
У меня есть сайт и я уже переопределил модель пользователя, сделал авторизацию/регистрацию через email. Теперь я хочу сделать авторизацию, когда пользователь вводит логин, пароль и ему на почту приходит код подтверждения. Меня интересует схема работы. Я это вижу так: вьюшка при помощи random генерирует код, send_email его отправляет и этот самый код записывается в БД. На мой взгляд это костыльно (Например, хранить код в БД с пользователем, т.к. придется еще реализовывать срок действия и т.д.).
Так вот, есть какие-нибудь варианты того, как это можно сделать. (генерировать код, где и как его хранить для проверки). Про всякие библиотеки с 2FA знаю, это не мой вариант
Чтобы не возиться со сроком действия, используйте redis или keydb. Кладете ключик с логином и ставите на него TTL, например в 1 час.
После прохода по ссылке, ключик удаляете.