Как я могу подтвердить новую регистрацию пользователя через SMS?
Я создаю мобильное ориентированное веб-приложение, чтобы позже преобразовать в гибридный, и я предпочел бы, чтобы новые регистрации пользователей подтвердили номер телефона пользователя по сравнению с их адресом электронной почты.
Я хочу отправить новому пользователю SMS с уникальным кодом. При первом входе в систему они должны ввести этот код для активации своей учетной записи.
У меня есть пользовательская служба SMS, которая отправляет мелкие SMS-сообщения, и хотела бы знать, как ее интегрировать в процесс регистрации Identity.
Обратите внимание, что я не хочу использовать SMS для обычной двухфакторной аутентификации.
Ответы
Ответ 1
Вы можете использовать создание дополнительных действий в своем контроллере аккаунта
и использовать методы из Microsoft.AspNet.Identity.Core
- UserManager.GenerateChangePhoneNumberToken
- Отправить sms с токеном
- UserManager.VerifyChangePhoneNumberToken
- Добавить пользовательскую логику для авторизации
Ответ 2
Существует несколько способов сделать это.
-
Дешевая, но ненадежная или готовая компания - это создать приложение на собственном устройстве и отправить на него другие устройства. Вы можете обрабатывать SMS и отвечать, как вам нравится. С неограниченными текстовыми планами это было бы хорошо. Он просто не является избыточным или надежным (аккумулятор телефона может умереть, возможно, вам придется делать обновления, которые могут прерывать обслуживание и т.д.)
-
Работайте с компанией Twilio (https://www.twilio.com/) и используйте свои шлюзы SMS, API и сервисы для создания, быстрого и дешево (по большей части) тип услуги, которую вы хотите предоставить. Есть конкуренты Twilio, и я не одобряю их, просто предоставляя их в качестве примера.
-
Получите свой собственный шлюз SMS (https://en.wikipedia.org/wiki/SMS_gateway), а затем выполните сильно интегрированные и настроенные службы.
Если это всего лишь доказательство концепции на уровне предприятия или вы не знаете, каков будет ваш уровень принятия вашего пользователя, то # 1, вероятно, хорошо, пока вам не понадобится # 2. # 3 редко является лучшим вариантом.