LINUX.ORG.RU

Вопросы про авторизацию и push messages

 , ,


0

1

Хочу спросить общие вопросы, чтобы понимать общие моменты. Я делаю приложение, у которого будет авторизация по номеру телефона и верификация. Бекенд будет на djangorest. Я думал сделать так:

  1. человек отправляет запрос на верификацию
  2. ему приходит смс с кодом
  3. человек вбивает код и бекенд чекает валидный ли код
  4. если валидный - формирует токен и передает этот токен клиенту
  5. клиент сохраняет этот токен и каждый раз, когда выполняет какие-то запросы к бекенду, сервер аутентификации чекает этот токен

Так же в приложении будут push messages. Они реально нужны. Отсюда возникают вполне закономерные вопросы:

Верификация:

  1. поиск платформы, которая сможет верифицировать юзеров с помощью смс
  2. выбор платформы из всех существующих

Прайс firebase: 10к юзеров бесплатно в месяц, за авторизацию +10к юзеров придется заплатить $600 т.е $0.06 верификация

Прайс twilio: $0.0075 за каждую смс

По идее twilio дешевле, чем firebase. Но тут есть несколько вопросов по всем этим платформам

  1. возможно ли в firebase сделать так, чтобы я только делал верификацию юзеров при реге, а потом я им выдавал токен и авторизовывал их у себя на бекенде?

  2. если я использую twilio для верификации, смогу ли я использовать push message в firebase? Или юзеры должны обязательно авторизоваться в firebase, чтобы принимать push message?

  3. Можно ли как-то организовать push message без участия firebase? Т.е, допустим, аплекейшен подписывается на на какую-то ветку rabbitmq, слушает ее и как только туда прилетает message «адресованный» ей - она этот message показывает как push message

★★★★
  1. там всего кода - вызов PhoneAuthProvider.getInstance().verifyPhoneNumber(). Ты можешь его вызывать не при логине, а при регистрации. Хотя и при логине можешь, ты же не будешь их вылогинивать по триста раз в день. Например, я в телеграм логинюсь один раз при покупке телефона, и все. В общем, код пиши как хочешь, ничего не случится страшного.

  2. firebase - это просто шина. как используешь, так и будет. для получения сообщений через фб тебе нужно будет взять токен (сдк его сгенерит), сохранить где-то и потом отвлекать пользователей своими наверняка крайне важными уведомлениями.

  3. ты хочешь, чтоб твой rabbitmq торчал в мир? выложи ssh-ключи от тачки сразу уже.

как только туда прилетает message «адресованный» ей Или не ей, а приложению, которое притворяется «ей», и читает данные всех пользователей подряд, да?

для таких вещей из подобного есть mqtt, но тебе это не нужно, потому что firebase с головой должно хватить.

cdshines ★★★★★
()

Насчёт смс провайдера, бери лучше локальный к целевой аудитории. А того же twilio есть проблемы в РФ и других странах.

kardapoltsev ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.