Аутентификация Firebase

Большинству приложений необходимо знать личность пользователя. Знание личности пользователя позволяет приложению безопасно сохранять пользовательские данные в облаке и обеспечивать одинаковый персонализированный опыт на всех устройствах пользователя.

Firebase Authentication предоставляет серверные службы, простые в использовании SDK и готовые библиотеки пользовательского интерфейса для аутентификации пользователей в вашем приложении. Он поддерживает аутентификацию с использованием паролей, телефонных номеров, популярных поставщиков федеративных удостоверений, таких как Google, Facebook и Twitter, и т. д.

Firebase Authentication тесно интегрируется с другими сервисами Firebase и использует отраслевые стандарты, такие как OAuth 2.0 и OpenID Connect, поэтому его можно легко интегрировать с вашим настраиваемым бэкендом.

При обновлении до Firebase Authentication with Identity Platform вы разблокируете дополнительные функции, такие как многофакторная аутентификация, функции блокировки, действия пользователей и ведение журнала аудита, SAML и общая поддержка OpenID Connect, многопользовательская поддержка и поддержка на уровне предприятия.

Узнайте, как начать

Ключевые возможности

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

Аутентификация FirebaseUI
Встраиваемое решение для аутентификации

Рекомендуемый способ добавления полной системы входа в ваше приложение.

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

Компонент аутентификации FirebaseUI реализует передовые методы аутентификации на мобильных устройствах и веб-сайтах, что может максимизировать конверсию входа и регистрации для вашего приложения. Он также обрабатывает пограничные случаи, такие как восстановление учетной записи и связывание учетной записи, которые могут быть чувствительны к безопасности и подвержены ошибкам при правильной обработке.

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

iOS Android Интернет

Аутентификация Firebase SDK
Аутентификация на основе электронной почты и пароля

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

iOS Android Web C++ Unity

Интеграция с поставщиком федеративных удостоверений

Аутентифицируйте пользователей путем интеграции с федеративными поставщиками удостоверений. SDK Firebase Authentication предоставляет методы, которые позволяют пользователям входить в систему с помощью своих учетных записей Google, Facebook, Twitter и GitHub.

Google iOS Android Web C++ Unity
Войти через Apple iOS Android Web C++ Unity
Фейсбук iOS Android Web C++ Unity
Твиттер iOS Android Web C++ Unity
Гитхаб iOS Android Web C++ Unity
Аутентификация по номеру телефона

Аутентифицируйте пользователей, отправляя SMS-сообщения на их телефоны.

iOS Android Web C++ Unity

Интеграция пользовательской системы аутентификации

Подключите существующую систему входа вашего приложения к Firebase Authentication SDK и получите доступ к базе данных Firebase Realtime и другим сервисам Firebase.

iOS Android Web C++ Unity

Анонимная авторизация

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

iOS Android Web C++ Unity

Аутентификация Firebase с Identity Platform

Firebase Authentication with Identity Platform — это необязательное обновление, добавляющее несколько новых функций в Firebase Authentication.

Это обновление не требует какой-либо миграции — ваш существующий клиентский SDK и административный код SDK будут продолжать работать, как и раньше, и вы получите немедленный доступ к таким функциям, как расширенное ведение журналов, поддержка корпоративного уровня и соглашения об уровне обслуживания. С помощью дополнительного кода вы сможете добавить многофакторную аутентификацию, функции блокировки и поддержку поставщиков SAML и OpenID Connect.

Firebase Authentication with Identity Platform имеет другую схему ценообразования по сравнению с базовым продуктом. При обновлении проекты бесплатного плана (Spark) будут ограничены 3000 активных пользователей в день, а проекты плана с оплатой по мере использования (Blaze) будут взиматься за использование сверх бесплатного уровня в 50 000 активных пользователей в месяц. Перед обновлением убедитесь, что вы понимаете последствия выставления счетов.

Узнайте больше о новых функциях, ценах и ограничениях ниже.

Функции

Многофакторная аутентификация

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

Узнайте, как добавить MFA в приложения Apple , Android и веб- приложения.

Блокирующие функции

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

Узнайте, как расширить Firebase Authentication функциями блокировки .

Провайдеры SAML и OpenID Connect Connect

Поддержка входа с использованием SAML (только в Интернете) и провайдеров OpenID Connect, изначально не поддерживаемых Firebase.

Узнайте, как добавить вход SAML в веб-приложения и вход OpenID Connect в Apple , Android и веб- приложения.

Действия пользователей и ведение журнала аудита

Отслеживайте и регистрируйте административный доступ и действия конечных пользователей.

Когда вы обновляете свой проект, вы автоматически включаете журналы аудита действий администратора в Cloud Logging. Вы также можете включить ведение журнала активности пользователей на странице настроек аутентификации консоли Firebase.

Чтобы узнать, как просматривать и анализировать журналы, см. документацию по Cloud Logging .

Предотвращение злоупотреблений с помощью проверки приложений

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

Чтобы узнать, как включить проверку приложений, см. документацию по проверке приложений .

Мульти аренды

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

См. Начало работы с несколькими арендаторами в документации по Cloud Identity Platform.

Корпоративная поддержка и SLA

Обновленные проекты получают гарантии безотказной работы служб аутентификации в соответствии с соглашением об уровне обслуживания (SLA) Identity Platform и доступ к поддержке корпоративного уровня.

Автоматическая очистка анонимных пользователей

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

Ограничения использования

После обновления Firebase Authentication с Identity Platform вводит новые ограничения на использование Firebase Authentication.

Бесплатно (Искра)

Проекты на бесплатном плане (Spark) имеют новое ограничение в 3000 активных пользователей в день (DAU) для большинства поставщиков услуг входа. Ежедневное активное использование рассчитывается на основе того, сколько уникальных пользователей входит в систему в течение 24 часов.

Провайдеры Новый лимит Старый лимит
Электронная почта, Социальные сети, Анонимные, Пользовательские 3000 DAU Неограниченный
SAML, подключение OpenID 2 DAU Н/Д

Плати по мере использования (Blaze)

Цены на проекты в плане Blaze основаны на ежемесячных активных пользователях (MAU) и включают бесплатный уровень в 50 000 пользователей. Активный пользователь — это любой, кто использует свою учетную запись в течение расчетного периода.

Провайдеры Бесплатный уровень Стоимость ($) за MAU выше бесплатного уровня
Электронная почта, Социальные сети, Анонимные, Пользовательские 0–49 999 активных пользователей в месяц от 0,0025 до 0,0055 на MAU
SAML, подключение OpenID 0–49 активных пользователей в месяц 0,015 за MAU

Обновите свой проект

Чтобы обновить проект до Firebase Authentication with Identity Platform, откройте страницу настроек аутентификации в консоли Firebase.

Как это работает?

Ссылки делают правильную вещь для платформы

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

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

Пути реализации

Использование аутентификации FirebaseUI
Настройте способы входа Для входа по адресу электронной почты и паролю или номеру телефона, а также для любых федеративных поставщиков удостоверений, которых вы хотите поддерживать, включите их в консоли Firebase и выполните любую настройку, требуемую поставщиком удостоверений, например, настройте URL-адрес перенаправления OAuth.
Настройте пользовательский интерфейс входа Вы можете настроить пользовательский интерфейс входа, задав параметры FirebaseUI, или разветвить код на GitHub, чтобы дополнительно настроить процесс входа.
Используйте FirebaseUI для выполнения процесса входа Импортируйте библиотеку FirebaseUI, укажите методы входа, которые вы хотите поддерживать, и инициируйте процесс входа в FirebaseUI.
Использование Firebase Authentication SDK
Настройте способы входа Для входа по адресу электронной почты и паролю или номеру телефона, а также для любых федеративных поставщиков удостоверений, которых вы хотите поддерживать, включите их в консоли Firebase и выполните любую настройку, требуемую поставщиком удостоверений, например, настройте URL-адрес перенаправления OAuth.
Реализуйте потоки пользовательского интерфейса для ваших методов входа Для входа по адресу электронной почты и паролю реализуйте поток, который предлагает пользователям вводить свои адреса электронной почты и пароли. Для входа по номеру телефона создайте поток, который запрашивает у пользователей номер телефона, а затем код из получаемого ими SMS-сообщения. Для федеративного входа реализуйте поток, требуемый каждым поставщиком.
Передайте учетные данные пользователя в Firebase Authentication SDK. Передайте адрес электронной почты и пароль пользователя или токен OAuth, полученный от поставщика федеративных удостоверений, в SDK Firebase Authentication.

Что дальше

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

iOS Android Web C++ Администратор Unity

Не уверен, с чего начать?

Узнайте, как начать