Мы разрабатываем мобильное приложение на Azure, где аутентификация основана на номере телефона. Ниже приводится последовательность действий для аутентификации
- Пользователь вводит свой номер мобильного телефона
- Back -end-система генерирует уникальный код 6 di git и отправляет его в виде SMS на номер мобильного телефона
- . Мобильное приложение считывает SMS и вызывает api логина с номером телефона и кодом 6 di git. , API входа сравнивает номер телефона и код 6 di git, и если он совпадает со значением в БД, пользователь успешно авторизован
Мы немного застряли на том, как реализовать авторизацию APIS, как только аутентификация прошла успешно. На ум приходят 2 стратегии
1) Создайте подписанный токен JWT с предварительно определенным временем истечения в составе ответа API входа в систему. Этот токен необходимо будет отправить как токен на предъявителя для авторизации APIS. Внедрите пользовательский API для клиентского приложения для обновления токена (передавая старый токен)
2) Создайте случайный пароль для каждого мобильного устройства, используйте Azure AD и используйте учетные данные владельца ресурса с опциональным refre sh token
Нужен совет по правильности вышеуказанных подходов. Любое предложение для альтернативного подхода также приветствуется