Firebase Authentication
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 Auth | |
|---|---|
| Готовое решение для аутентификации | Рекомендуемый способ добавления полноценной системы авторизации в ваше приложение. FirebaseUI предоставляет готовое решение для аутентификации, которое обрабатывает сценарии входа пользователей с использованием адресов электронной почты и паролей, номеров телефонов, а также популярных федеративных поставщиков идентификации, включая Google Sign-In и Facebook Login. Компонент FirebaseUI Auth реализует лучшие практики аутентификации на мобильных устройствах и веб-сайтах, что позволяет максимально увеличить конверсию при входе и регистрации в вашем приложении. Он также корректно обрабатывает такие граничные случаи, как восстановление учетной записи и привязка учетной записи, которые могут быть чувствительны к вопросам безопасности и чреваты ошибками. FirebaseUI легко настраивается под визуальный стиль вашего приложения, и, поскольку это открытый исходный код, вы не ограничены в реализации желаемого пользовательского опыта. |
| Firebase Authentication SDK | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Аутентификация на основе электронной почты и пароля. | Аутентификация пользователей осуществляется с помощью их адресов электронной почты и паролей. SDK Firebase Authentication предоставляет методы для создания и управления пользователями, которые используют свои адреса электронной почты и пароли для входа в систему. Firebase Authentication также обрабатывает отправку писем для сброса пароля. | ||||||||||
| Интеграция с федеративным поставщиком идентификации | Аутентификация пользователей осуществляется путем интеграции с федеративными поставщиками идентификации. SDK Firebase Authentication предоставляет методы, позволяющие пользователям входить в систему с помощью своих учетных записей Google, Facebook, Twitter и GitHub.
| ||||||||||
| Подтверждение номера телефона | Аутентификация пользователей осуществляется путем отправки SMS-сообщений на их телефоны. | ||||||||||
| Интеграция пользовательской системы аутентификации | Подключите существующую систему авторизации вашего приложения к Firebase Authentication SDK и получите доступ к Firebase Realtime Database и другим сервисам Firebase . | ||||||||||
| Анонимная аутентификация | Используйте функции, требующие аутентификации, без предварительного входа пользователей в систему, создавая временные анонимные учетные записи. Если пользователь позже решит зарегистрироваться, вы можете преобразовать анонимную учетную запись в обычную, чтобы он мог продолжить работу с того места, где остановился. | ||||||||||
Firebase Authentication with Identity Platform
Firebase Authentication with Identity Platform — это дополнительное обновление, которое добавляет несколько новых функций в Firebase Authentication .
Это обновление не требует миграции — ваш существующий код клиентского SDK и административного SDK продолжит работать как прежде, и вы получите немедленный доступ к таким функциям, как расширенное логирование, поддержка корпоративного уровня и соглашения об уровне обслуживания (SLA). С помощью дополнительного кода вы сможете добавить многофакторную аутентификацию, функции блокировки и поддержку поставщиков SAML и OpenID Connect.
Firebase Authentication with Identity Platform имеет другую схему ценообразования по сравнению с базовым продуктом. При переходе на платный тариф (Spark) количество проектов, использующих бесплатный тариф, будет ограничено 3000 активных пользователей в день, а за использование тарифа с оплатой по мере использования (Blaze) будет взиматься плата за превышение бесплатного уровня в 50 000 активных пользователей в месяц. Перед переходом на платный тариф обязательно ознакомьтесь с условиями оплаты.
Подробнее о новых функциях, ценах и ограничениях читайте ниже.
Функции
| Многофакторная аутентификация | Многофакторная аутентификация с использованием SMS защищает данные ваших пользователей, добавляя второй уровень безопасности к вашему приложению. Узнайте, как добавить многофакторную аутентификацию (MFA) в ваши приложения для Apple , Android и веб- приложения. |
| Блокирующие функции | Блокирующие функции позволяют выполнять пользовательский код, изменяющий результат регистрации или входа пользователя в ваше приложение. Узнайте, как расширить Firebase Authentication с помощью блокирующих функций . |
| Провайдеры SAML и OpenID Connect | Поддерживается вход в систему с использованием SAML (только веб-версия) и провайдеров OpenID Connect, которые изначально не поддерживаются Firebase. Узнайте, как добавить вход через SAML в веб-приложения и вход через OpenID Connect в приложения Apple , Android и веб- приложения. |
| Журналы активности пользователей и аудита | Отслеживать и регистрировать административный доступ и активность конечных пользователей. При обновлении проекта автоматически включается журнал аудита активности администратора в Cloud Logging. Также можно включить журнал активности пользователей на странице «Настройки аутентификации» в консоли Firebase . Чтобы узнать, как просматривать и анализировать журналы, см. документацию по Cloud Logging . |
| Многопользовательский режим | Используя систему арендаторов, вы можете создать несколько уникальных групп пользователей и конфигураций в рамках одного проекта. См. раздел «Начало работы с многопользовательским режимом» в документации Cloud Identity Platform. |
| Корпоративная поддержка и соглашение об уровне обслуживания (SLA) | В рамках соглашения об уровне обслуживания (SLA) платформы идентификации для модернизированных проектов гарантируется бесперебойная работа служб аутентификации, и они имеют право на переход на поддержку корпоративного уровня. |
| Автоматическая очистка анонимных пользователей | Вам будет предоставлена возможность включить автоматическое удаление анонимных учетных записей, если им более тридцати дней. Анонимные учетные записи также больше не будут учитываться при расчете платежей и квот на использование. |
Ограничения на использование
После обновления Firebase Authentication with Identity Platform вводит новые ограничения на использование Firebase Authentication .
Бесплатно (Spark)
Для проектов, использующих бесплатный тарифный план (Spark), установлен новый лимит в 3000 ежедневно активных пользователей (DAU) для большинства провайдеров авторизации. Ежедневное активное использование рассчитывается на основе количества уникальных пользователей, авторизующихся в течение 24 часов.
| Поставщики | Новый лимит | Старый лимит |
|---|---|---|
| Электронная почта, Социальные сети, Анонимность, Пользовательский | 3000 активных пользователей в день | Без ограничений |
| SAML, OpenID Connect | 2 DAU | Н/Д |
Оплата по факту использования (Blaze)
Стоимость проектов в тарифном плане Blaze рассчитывается исходя из количества ежемесячно активных пользователей (MAU) и включает бесплатный уровень с 50 000 пользователей. Активным пользователем считается любой пользователь, использующий свою учетную запись в течение расчетного периода.
| Поставщики | Бесплатный уровень | Стоимость ($) за ежемесячно активных пользователей (MAU) сверх бесплатного уровня |
|---|---|---|
| Электронная почта, Социальные сети, Анонимность, Пользовательский | 0-49 999 активных пользователей в месяц | от 0,0025 до 0,0055 на MAU |
| SAML, OpenID Connect | 0-49 MAU | 0,015 на MAU |
Улучшите свой проект
Чтобы обновить свой проект до Firebase Authentication with Identity Platform , откройте страницу « Настройки аутентификации» в консоли Firebase .
Как это работает?

Для авторизации пользователя в вашем приложении сначала необходимо получить от него учетные данные. Эти данные могут представлять собой адрес электронной почты и пароль пользователя или токен OAuth от федеративного поставщика идентификации. Затем эти данные передаются в Firebase Authentication SDK. Наши бэкэнд-сервисы проверят эти данные и вернут ответ клиенту.
После успешного входа в систему вы можете получить доступ к основной информации профиля пользователя, а также контролировать доступ пользователя к данным, хранящимся в других продуктах Firebase . Вы также можете использовать предоставленный токен аутентификации для проверки личности пользователей в собственных бэкэнд-сервисах.
Пути реализации
| Использование аутентификации FirebaseUI | ||
|---|---|---|
| Настройка способов входа в систему | Для входа в систему с использованием адреса электронной почты и пароля или номера телефона, а также для поддержки любых федеративных поставщиков идентификации, включите их в консоли Firebase и выполните все необходимые настройки, например, укажите URL-адрес перенаправления OAuth. | |
| Настройте пользовательский интерфейс входа в систему. | Вы можете настроить пользовательский интерфейс входа в систему, задав параметры FirebaseUI , или создать форк кода на GitHub, чтобы дополнительно настроить процесс входа. | |
| Используйте FirebaseUI для выполнения процесса авторизации. | Импортируйте библиотеку FirebaseUI , укажите поддерживаемые методы авторизации и запустите процесс авторизации FirebaseUI . | |
| Использование SDK Firebase Authentication | ||
|---|---|---|
| Настройка способов входа в систему | Для входа в систему с использованием адреса электронной почты и пароля или номера телефона, а также для поддержки любых федеративных поставщиков идентификации, включите их в консоли Firebase и выполните все необходимые настройки, например, укажите URL-адрес перенаправления OAuth. | |
| Реализуйте сценарии пользовательского интерфейса для ваших методов входа в систему. | Для входа по адресу электронной почты и паролю реализуйте процесс, который запрашивает у пользователей ввод их адресов электронной почты и паролей. Для входа по номеру телефона создайте процесс, который запрашивает у пользователей номер телефона, а затем код из полученного SMS-сообщения. Для федеративного входа реализуйте процесс, требуемый каждым провайдером. | |
| Передайте учетные данные пользователя в SDK Firebase Authentication | Передайте в Firebase Authentication SDK адрес электронной почты и пароль пользователя или токен OAuth, полученный от федеративного поставщика идентификации. | |
Что дальше?
Узнайте больше о пользователях в проекте Firebase , а затем ознакомьтесь с руководствами по началу работы с платформой и поставщиками авторизации, которые вы хотите поддерживать:
iOS+ Android Web Flutter Unity C++ Администратор
Не знаете, с чего начать?