Одноразовая аутентификация пользователя с помощью SMS с помощью Django и Twilio

Я пишу back-end в Django для мобильного приложения, которое я создаю. Мне нужно аутентифицировать пользователя при первом открытии мобильного приложения через SMS, чтобы убедиться, что это реальный человек. Что должно произойти, так это следующее: пользователь вводит номер телефона в приложении, сервер затем отправляет SMS-сообщение пользователю с кодом аутентификации, пользователь затем вводит код аутентификации в приложении, и сервер проверяет, что код, введенный в приложение, тот же, который они получили через SMS.

Мне нужно используйте Twilio с моим проектом Django. Мне просто нужно знать, как лучше поступить? Передняя сторона этого (мобильное приложение)-это не то, о чем я спрашиваю, я спрашиваю о коде на задней стороне, который должен быть реализован. Я изо всех сил пытаюсь найти актуальную документацию для интеграции django-twilio, которая могла бы это сделать.

2 ответов


Twilio evangelist и сопровождающий django-twilio здесь.

то, что вы хотите построить, очень легко сделать, я могу описать шаги для вас здесь:

  • создайте модель Django, которая хранит номер пользователя и сгенерированный пароль
  • когда новый пользователь будет создан, взять их номер и SMS им код с помощью Twilio REST API
  • когда они вводят пароль, который вы отправили им, перекрестная ссылка на него с один хранится в базе данных.
  • если номер правильный: проверьте их, если нет, скажите им, что это неправильно и предложите отправить им SMS снова.

Я надеюсь, что это ясно, если у вас есть еще вопросы, не стесняйтесь связаться с paul@twilio.com


вы можете использовать django-passcode в качестве приложения в своем проекте. Он предоставляет API для "регистрации" номера мобильного телефона и" проверки " через SMS-код доступа. Он использует мобильный номер и устройство id пара как уникальный. Он также генерирует и возвращает токен для будущих запросов авторизации из мобильного приложения. Вы можете использовать Twilio или любой другой SMS api для отправки sms.

https://github.com/sgurminder/django-passcode

Я ценю вашу обратную связь для django-пароль