codeword/README.md

26 lines
1.8 KiB
Markdown
Raw Normal View History

2023-12-08 20:32:36 +00:00
# codeword
2023-12-08 21:00:40 +00:00
Это сервис обмена кодового слова на какие либо действия.
2023-12-08 20:32:36 +00:00
2023-12-08 21:00:40 +00:00
- Обмен кодового слова из ссылки, чтобы получить пару токенов и сменить пароль
- Обмен кодового слова промокода, чтобы создать персональную временную скидку
- Выполнение некоторой последовательности действий по нажатию на ссылку
2023-12-08 20:32:36 +00:00
2023-12-08 21:00:40 +00:00
Вот общая суть цель работы сервиса.
2023-12-08 20:32:36 +00:00
2023-12-08 21:00:40 +00:00
# Конкретные сценарии
2023-12-08 20:32:36 +00:00
2023-12-08 21:00:40 +00:00
## Восстановление пароля
2023-12-08 20:32:36 +00:00
2023-12-08 21:00:40 +00:00
Для того чтобы восстановить пароль, надо следующее:
2023-12-08 20:32:36 +00:00
2023-12-08 21:00:40 +00:00
- Сгенерировать ключ при помощи шифрования на эллиптических кривых
- По email, переданному в запросе, найти пользователя, для которого будем восстанавливать пароль
- Сложить в базу запись с подписью, айдишником, урлом перенаправления и датой создания
- Отправить на этот email письмо с ссылкой типа https://hub.pena.digital/codeword/restore/{signId}
- В обработчике таких ссылок получить из роута sign
- По ней найти запись, сложенную выше
- Если с момента создания прошло больше 15 минут, то вернуть ошибку
- Иначе, сходить на auth сервис на метод exchange, с которого получить пару токенов, которые вернуть запрашивающему
2023-12-08 20:32:36 +00:00