С чего начать аутентификацию Firebase?

У меня уже есть система аутентификации

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

  • Индивидуальные решения, такие как системы на основе паролей.
  • Сторонние службы управления идентификацией, такие как Auth0 или Okta.
  • Существующие интеграции с федеративными поставщиками удостоверений, такими как Google, Facebook или Apple. (А если вы еще не поддерживаете федеративную идентификацию, но хотите, см. следующий раздел.)

При использовании пользовательской аутентификации вы регистрируете пользователей в системе по вашему выбору, создаете для пользователя токен Firebase на своем сервере, а затем используете токен от клиента для аутентификации в Firebase.

См. документацию для iOS+ , Android , Web , Flutter , Unity или C++ .

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

Если вы создаете новое приложение или добавляете вход в существующее приложение, у Firebase есть библиотеки и сервисы, которые могут помочь вам реализовать безопасную аутентификацию без необходимости самостоятельно создавать серверную часть аутентификации. Firebase Authentication — это комплексное серверное решение для входа в систему с использованием паролей, федеративных поставщиков удостоверений, ссылок электронной почты и текстовых сообщений.

Мне нужно простое в использовании решение

Самый быстрый и простой способ добавить аутентификацию в приложение — использовать FirebaseUI Auth , встраиваемую библиотеку пользовательского интерфейса. FirebaseUI реализует полные пользовательские потоки для всех поддерживаемых методов входа Firebase Authentication.

Поскольку FirebaseUI Auth — это готовое решение, у него есть особый пользовательский интерфейс, который может не соответствовать вашим потребностям. Если вы хотите изменить UX, вы можете создать форк библиотеки с открытым исходным кодом и использовать свою собственную версию. Однако для существенно разных процессов входа в систему вы можете предпочесть реализовать свои собственные процессы с помощью Firebase SDK, как описано в следующем разделе.

См. документацию FirebaseUI Auth для iOS , Android или Интернета .

Я хочу иметь полный контроль над процессом входа в систему

Чтобы лучше контролировать процесс входа в приложение, вы можете реализовать свои собственные процессы аутентификации и использовать Firebase SDK для работы со службами аутентификации Firebase. Например, создайте свой собственный поток адреса электронной почты и пароля или процесс входа в Google и передайте адрес электронной почты и пароль пользователя или токен идентификатора Google в Firebase для аутентификации пользователя.

См. документацию Firebase Authentication SDK:

Сервисы Firebase
Адрес электронной почты и пароль для входа iOS+ | Андроид | Интернет | флаттер | Единство | С++
Вход по номеру телефона iOS+ | Андроид | Интернет | флаттер | Единство | С++
Вход по ссылке электронной почты iOS+ | Андроид | Интернет | флаттер | Единство | С++
Федеративная идентичность
Google iOS+ | Андроид | Интернет | флаттер | Единство | С++
Фейсбук iOS+ | Андроид | Интернет | флаттер | Единство | С++
Яблоко iOS+ | Андроид | Интернет | флаттер | Единство | С++
Играть в игры Андроид | Единство | С++
Игровой центр iOS+
GitHub iOS+ | Андроид | Интернет | флаттер | Единство | С++
Майкрософт iOS+ | Андроид | Интернет | Единство | С++
Твиттер iOS+ | Андроид | Интернет | флаттер | Единство | С++
Yahoo iOS+ | Андроид | Интернет | Единство | С++

Я хочу создать богатый опыт предварительного входа в систему

Вы можете разрешить пользователям использовать функции входа в ваше приложение до того, как они действительно войдут в систему с помощью анонимной аутентификации . При анонимном входе вы создаете временные учетные записи для одного сеанса, которые можно использовать как настоящую учетную запись. Затем, после того как пользователь войдет в систему или зарегистрируется, свяжите временную учетную запись с реальной учетной записью, чтобы позволить ему продолжить с того места, где они остановились.

Анонимная аутентификация хорошо работает вместе с пользовательской аутентификацией или любой службой аутентификации Firebase.

См. документацию для iOS+ , Android , Web , Flutter , Unity или C++ .

Я хочу получить доступ к сервисам Firebase со своего бэкэнда

Чтобы получить доступ к сервисам Firebase с сервера, вам не нужно использовать аутентификацию Firebase. Вместо этого используйте Admin SDK . При инициализации Admin SDK вы проходите аутентификацию с использованием учетных данных сервисной учетной записи, которые представляют ваш проект Firebase, а не конкретного пользователя, и которые предоставляют полный доступ к ресурсам вашего проекта.