Как лучше хендлить период между созданием ключа двухфакторной авторизации и его сохранением?
Есть приложение на Spring Boot. Я хочу добавить в него двухфакторную авторизацию.
На данный момент это работает так:
Пользователь активирует двухфакторную авторизацию. Бэкенд возвращает QR-код для использования в Google Auth и сразу сохраняет инфу в БД о том, что двухфакторка для пользователя активирована.
Но я хочу переделать это в такой вид:
Пользователь получает QR-код, использует его и отправляет обратно код, который видит в Google Auth. И только после этого в БД сохраняется инфа о том, что пользователь активировал двухфакторку.
Поэтому вопрос:
Как будет лучше хендлить момент между отправкой QR-кода и подтверждением активации? Стоит создать какой-то сервис/воркер, который будет временно хранить инфу о том, что пользователь начал подключение для себя двухфакторки?
Или же в базу сохранять инфу о промежуточном состоянии активации? Но как тогда в таком случае подчищать неоконченные активации?