Начните использовать проверку приложений в приложениях C++

На этой странице показано, как включить проверку приложений (App Check) в приложении C++ с использованием стандартных поставщиков: Play Integrity на Android и Device Check или App Attest на платформах Apple. Включение проверки приложений гарантирует, что доступ к ресурсам Firebase вашего проекта будет только у вашего приложения. См. обзор этой функции.

1. Настройте свой проект Firebase.

  1. Добавьте Firebase в свой проект на C++, если вы еще этого не сделали.

  2. Зарегистрируйте свои приложения для использования App Check с поставщиками Play Integrity, Device Check или App Attest в разделе «Настройки проекта > Проверка приложений» консоли Firebase.

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

    Подробные инструкции по регистрации у каждого провайдера см. в документации для Android и iOS.

  3. Необязательно : В настройках регистрации приложения установите пользовательское время жизни (TTL) для токенов App Check, выданных провайдером. Вы можете установить TTL на любое значение от 30 минут до 7 дней. При изменении этого значения следует учитывать следующие компромиссы:

    • Безопасность: Более короткие значения TTL обеспечивают более высокую безопасность, поскольку сокращают период времени, в течение которого утечка или перехват токена могут быть использованы злоумышленником в корыстных целях.
    • Производительность: Более короткие значения TTL означают, что ваше приложение будет выполнять аттестацию чаще. Поскольку процесс аттестации приложения каждый раз добавляет задержку к сетевым запросам, короткий TTL может повлиять на производительность вашего приложения.
    • Квота и стоимость: Более короткие сроки действия TTL и частая повторная аттестация быстрее истощают вашу квоту, а для платных услуг могут стоить дороже. См. раздел «Квоты и лимиты» .

    Значение TTL по умолчанию является разумным для большинства приложений. Обратите внимание, что библиотека App Check обновляет токены примерно через половину времени, указанного в TTL.

2. Добавьте библиотеку App Check в свое приложение.

Добавьте библиотеку App Check в список зависимостей, следуя инструкциям по настройке App Check.

3. Инициализация проверки приложения

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

Android

  1. Включите заголовочный файл для firebase::app_check :

    #include "firebase/app_check.h"
  2. Инициализируйте библиотеку App Check с помощью поставщика Play Integrity:

    firebase::app_check::AppCheck::SetAppCheckProviderFactory(
      firebase::app_check::PlayIntegrityProviderFactory::GetInstance());
    

iOS+

  1. Включите заголовочный файл для firebase::app_check :

    #include "firebase/app_check.h"
  2. Инициализируйте библиотеку App Check с помощью поставщика Device Check или App Attest:

    firebase::app_check::AppCheck::SetAppCheckProviderFactory(
      firebase::app_check::DeviceCheckProviderFactory::GetInstance());
    

Следующие шаги

После установки библиотеки App Check в ваше приложение, начните распространять обновленное приложение среди пользователей.

Обновленное клиентское приложение начнет отправлять токены App Check вместе с каждым запросом в Firebase, но для продуктов Firebase не потребуется, чтобы токены были действительными, пока вы не включите проверку в разделе App Check консоли Firebase.

Отслеживайте показатели и обеспечьте соблюдение требований.

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

Чтобы помочь вам принять это решение, вы можете ознакомиться с показателями App Check для используемых вами сервисов:

Включить принудительное выполнение проверки приложений

Когда вы поймете, как проверка приложений повлияет на ваших пользователей, и будете готовы продолжить, вы можете включить принудительное применение проверки приложений:

Используйте App Check в средах отладки.

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

См. раздел «Использование проверки приложений с помощью отладчика в приложениях C++» .