Проверка приложения Firebase
Проверка приложений помогает защитить ваши ресурсы API от неправомерного использования, предотвращая доступ неавторизованных клиентов к вашим внутренним ресурсам. Он работает как с сервисами Firebase, так и с облачными сервисами Google, а также с вашими собственными API, чтобы обеспечить безопасность ваших ресурсов.
При проверке приложений устройства, на которых запущено ваше приложение, будут использовать поставщика аттестации приложения или устройства, который подтверждает одно или оба из следующих условий:
- Запросы исходят из вашего подлинного приложения
- Запросы исходят от подлинного, незащищенного устройства.
Эта аттестация прилагается к каждому запросу, который ваше приложение отправляет к указанным вами API. Когда вы включаете принудительную проверку приложений, запросы от клиентов без действительной аттестации будут отклонены, как и любой запрос, исходящий от приложения или платформы, которые вы не авторизовали.
App Check имеет встроенную поддержку использования следующих сервисов в качестве поставщиков аттестации:
- DeviceCheck или App Attest на платформах Apple
- Играть в Integrity или SafetyNet (устарело) на Android
- reCAPTCHA Enterprise в веб-приложениях.
Если этого недостаточно для ваших нужд, вы также можете реализовать собственную службу, которая использует либо стороннего поставщика аттестации, либо ваши собственные методы аттестации.
Проверка приложений в настоящее время работает со следующими продуктами Firebase:
Поддерживаемые продукты Firebase |
---|
База данных реального времени |
Облако Firestore |
Облачное хранилище |
Облачные функции (вызываемые функции) |
Аутентификация (бета; требуется обновление до Firebase Authentication with Identity Platform ) |
Вы также можете использовать проверку приложений для защиты серверных ресурсов, отличных от Firebase.
Готовы начать?
Как это работает?
Когда вы включаете проверку приложений для службы и включаете клиентский SDK в свое приложение, периодически происходит следующее:
- Ваше приложение взаимодействует с выбранным вами поставщиком, чтобы получить подтверждение подлинности приложения или устройства (или того и другого, в зависимости от поставщика).
- Аттестация отправляется на сервер проверки приложений, который проверяет действительность аттестации с использованием параметров, зарегистрированных в приложении, и возвращает вашему приложению токен проверки приложения со сроком действия. Этот токен может хранить некоторую информацию о проверенном материале аттестации.
- Клиентский SDK App Check кэширует токен в вашем приложении, готовый к отправке вместе с любыми запросами, которые ваше приложение отправляет к защищенным службам.
Служба, защищенная App Check, принимает только запросы, сопровождаемые текущим действительным токеном App Check.
Насколько надежна безопасность, обеспечиваемая App Check?
App Check полагается на силу своих поставщиков аттестации для определения подлинности приложения или устройства. Это предотвращает некоторые, но не все векторы злоупотреблений, направленные на ваши серверные части. Использование App Check не гарантирует устранение всех злоупотреблений, но, интегрировавшись с App Check, вы делаете важный шаг к защите своих серверных ресурсов от злоупотреблений.
Как проверка приложений связана с аутентификацией Firebase?
App Check и Firebase Authentication — дополняющие друг друга части истории безопасности вашего приложения. Firebase Authentication обеспечивает аутентификацию пользователя, которая защищает ваших пользователей, тогда как App Check обеспечивает подтверждение подлинности приложения или устройства, что защищает вас, разработчика. Проверка приложений защищает доступ к вашим ресурсам Firebase и пользовательским бэкендам, требуя, чтобы вызовы API содержали действительный токен Firebase App Check. Эти две концепции работают вместе, чтобы помочь защитить ваше приложение.
Квоты и лимиты
Использование вами App Check регулируется квотами и ограничениями используемых вами провайдеров аттестации.
На доступ к DeviceCheck и App Attest распространяются любые квоты или ограничения, установленные Apple.
Ежедневная квота Play Integrity составляет 10 000 вызовов для стандартного уровня использования API. Информацию о повышении уровня использования см. в документации Play Integrity .
Ежедневная квота SafetyNet составляет 10 000 звонков. Для получения информации о запросе увеличения квоты см . документацию SafetyNet .
reCAPTCHA Enterprise предоставляется бесплатно за 1 миллион вызовов в месяц и за дополнительную плату. См. цены на reCAPTCHA Enterprise .
Начать
Готовы начать?
Платформы Apple
Аттестация приложения DeviceCheck
Андроид
Интернет
Флаттер
С++
Единство
Узнайте, как реализовать собственный поставщик проверки приложений:
Узнайте, как использовать проверку приложений для защиты серверных ресурсов, отличных от Firebase: