Аутентификация 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 можно легко настроить, чтобы он соответствовал остальному визуальному стилю вашего приложения, и он имеет открытый исходный код, поэтому вы не ограничены в реализации желаемого взаимодействия с пользователем. |
Аутентификация Firebase SDK | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Аутентификация на основе электронной почты и пароля | Аутентифицируйте пользователей с помощью их адресов электронной почты и паролей. SDK Firebase Authentication предоставляет методы для создания и управления пользователями, которые используют свои адреса электронной почты и пароли для входа в систему. Firebase Authentication также обрабатывает отправку электронных писем для сброса пароля. | ||||||||||
Интеграция с поставщиком федеративных удостоверений | Аутентифицируйте пользователей путем интеграции с федеративными поставщиками удостоверений. SDK Firebase Authentication предоставляет методы, которые позволяют пользователям входить в систему с помощью своих учетных записей Google, Facebook, Twitter и GitHub.
| ||||||||||
Аутентификация по номеру телефона | Аутентифицируйте пользователей, отправляя SMS-сообщения на их телефоны. | ||||||||||
Интеграция пользовательской системы аутентификации | Подключите существующую систему входа вашего приложения к Firebase Authentication SDK и получите доступ к базе данных Firebase Realtime и другим сервисам Firebase. | ||||||||||
Анонимная авторизация | Используйте функции, требующие проверки подлинности, не требуя от пользователей предварительного входа в систему путем создания временных анонимных учетных записей. Если пользователь позже решит зарегистрироваться, вы можете обновить анонимную учетную запись до обычной учетной записи, чтобы пользователь мог продолжить с того места, на котором он остановился. |
Аутентификация 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, а затем ознакомьтесь с руководствами по интеграции для поставщиков услуг входа, которых вы хотите поддерживать:
Не уверен, с чего начать?