Параметры аутентификации с приложением Expo RN, использующим бэкэнд Firebase - PullRequest
0 голосов
/ 02 февраля 2020

Я оцениваю некоторые варианты аутентификации для React Native App, используя Expo и Firebase в качестве моего бэкэнда. Моя цель - сохранить одинаковый код между рабочим процессом Expo Client Managed и автономным приложением Expo (не извлечено).

Я бы хотел, чтобы Apple, Google и Facebook входили в систему с параметрами входа в приложение.

Я склоняюсь к следующему механизму аутентификации и хотел бы получить отзывы от сообщества.

Для входа в Google

  1. Используйте Expo AppAuth , чтобы сначала войти в систему.
  2. Затем, получив учетные данные авторизации от Google, используйте Firebase signInWithCredential

Примечание для Google Войти Я не использую знак Google или GoogleSignIn , поскольку они различаются между сборками клиента Expo (время разработки) и отдельной версией Expo (производство)

для Apple Аутентификация

Очень похоже на вышеприведенное -

  1. Используйте AppleAuthentication для входа в систему пользователя.
  2. Получив учетные данные аутентификации от Apple использует Firebase signInWithCredential

Для входа в Facebook

  1. Использование Expo AppAuth для входа пользователь сначала, используя (OAuth-провайдер facebook.com)
  2. n получив учетные данные авторизации от Facebook, используйте Firebase signInWithCredential

При таком подходе я смогу сохранить один и тот же путь к коду для dev и prod (изменяя только имя пакета или пакета) id).

Это правильный подход для Auth?

...