У меня уже есть система аутентификации
Если в вашем приложении уже есть реализация входа и вы хотите использовать ее для аутентификации с помощью серверных служб 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+ | Андроид | Интернет | флаттер | Единство | С++ |
Федеративная идентичность | |
iOS+ | Андроид | Интернет | флаттер | Единство | С++ | |
Фейсбук | iOS+ | Андроид | Интернет | флаттер | Единство | С++ |
Яблоко | iOS+ | Андроид | Интернет | флаттер | Единство | С++ |
Играть в игры | Андроид | Единство | С++ |
Игровой центр | iOS+ |
GitHub | iOS+ | Андроид | Интернет | флаттер | Единство | С++ |
Майкрософт | iOS+ | Андроид | Интернет | Единство | С++ |
Твиттер | iOS+ | Андроид | Интернет | флаттер | Единство | С++ |
Yahoo | iOS+ | Андроид | Интернет | Единство | С++ |
Я хочу создать богатый опыт предварительного входа в систему
Вы можете разрешить пользователям использовать функции входа в ваше приложение до того, как они действительно войдут в систему с помощью анонимной аутентификации . При анонимном входе вы создаете временные учетные записи для одного сеанса, которые можно использовать как настоящую учетную запись. Затем, после того как пользователь войдет в систему или зарегистрируется, свяжите временную учетную запись с реальной учетной записью, чтобы позволить ему продолжить с того места, где они остановились.
Анонимная аутентификация хорошо работает вместе с пользовательской аутентификацией или любой службой аутентификации Firebase.
См. документацию для iOS+ , Android , Web , Flutter , Unity или C++ .
Я хочу получить доступ к сервисам Firebase со своего бэкэнда
Чтобы получить доступ к сервисам Firebase с сервера, вам не нужно использовать Firebase Authentication . Вместо этого используйте Admin SDK . При инициализации Admin SDK вы проходите аутентификацию с использованием учетных данных сервисной учетной записи, которые представляют ваш проект Firebase, а не конкретного пользователя, и которые предоставляют полный доступ к ресурсам вашего проекта.