Для небольшого приложения, предназначенного для очень небольшого круга пользователей, мы планируем внедрить аутентификацию по магическим ссылкам. Пользователь заходит в приложение, вводит свой адрес электронной почты, получает волшебную ссылку на адрес электронной почты, после того, как пользователь нажимает на ссылку, он входит в приложение.
Я не могу найтидостаточно ресурсов, чтобы понять, как это сделать в SPA. Вот несколько полезных ссылок:
Магическая ссылка с узлом
Магическая связь с Auth0
Это рабочий процесс SPA, который я имею в виду:
- Пользователь приходит в SPA
- SPA отправляет пользователя на страницу входа, где он может указать свой адрес электронной почты.
- SPA отправляет адрес электронной почты на серверный интерфейс API
- API решает, является ли пользовательзарегистрирован и отправляет им электронное письмо с кратковременным jwt.
- Нажав на эту ссылку, пользователь попадает на маршрут SPA с jwt в параметрах запроса.
- Внешний интерфейс перенаправляет этот jwt в API. бэкэнд, и бэкэнд API проверяет jwt и устанавливает cookie
- Этот cookie может затем использоваться для поддержки сеанса пользователя.
Я хочу проверить этот рабочий процесс, но яне в состоянии найти достаточно ресурсов. В частности, я хочу уточнить, должна ли волшебная ссылка отправлять пользователя в SPA, и SPA должен отвечать за извлечение jwt и отправку его в бэкэнд API, или есть другой способ сделать это?
Это как это должно быть реализовано? Каковы последствия для безопасности?
Я использую реагировать и реагировать маршрутизатор.