Социальная аутентификация Firebase Django

# #django #firebase-authentication #token

Вопрос:

Сейчас я создаю мобильное приложение с Flutter Django в качестве бэкенда. Я планирую использовать аутентификацию Firebase с помощью FlutterFire, я понимаю, что информация о входе/выходе пользователя будет храниться в базе данных Firebase.

Какова обычная практика уведомления другого бэкенда (в данном случае Django) о том, что пользователь вошел в систему? А затем предоставить доступ к определенной функции в приложении? Является ли это тем, что мы используем обратный вызов, полученный от FlutterFire, а затем используем сгенерированный токен из Firebase в качестве токена между нашим интерфейсом (Flutter) и серверной частью (Django)?

Спасибо

Ответ №1:

Если вы хотите использовать информацию о состоянии аутентификации Firebase пользователя в своем собственном внутреннем коде, вы можете:

  1. Запросите идентификационный токен пользователя в коде Flutter
  2. Передайте этот идентификационный токен на свой сервер с соответствующим запросом по защищенному соединению.
  3. Проверьте маркер идентификатора в коде на стороне сервера и получите утверждения от этого маркера.
  4. Определите, имеет ли пользователь право на выполнение операции.

Этот процесс довольно хорошо задокументирован в документации Firebase по проверке маркеров идентификаторов, поэтому я рекомендую также посмотреть там.