На этой странице показано, как включить App Check в приложении Apple с помощью встроенного поставщика DeviceCheck. Включив App Check, вы обеспечите доступ к ресурсам Firebase в вашем проекте только для своего приложения. Ознакомьтесь с общими сведениями об этой функции.
Если вы хотите использовать App Check с собственным поставщиком, ознакомьтесь со статьей Как реализовать собственный поставщик App Check.
1. Как настроить проект Firebase
Если вы ещё этого не сделали, добавьте Firebase в проект Apple.
На сайте Apple для разработчиков создайте закрытый ключ DeviceCheck.
В консоли Firebase выберите Security (Безопасность) > App Check (Проверка приложений).
На вкладке Apps (Приложения) зарегистрируйте приложения, чтобы использовать App Check с поставщиком DeviceCheck. Вам нужно будет указать закрытый ключ, созданный на сайте Apple Developer.
Обычно требуется зарегистрировать все приложения проекта, поскольку после включения принудительного применения для продукта Firebase доступ к его внутренним ресурсам смогут получить только зарегистрированные приложения.
Необязательно. Установите время жизни токена (TTL).
В настройках регистрации приложения задайте пользовательское время жизни (TTL) для токенов App Check, выпущенных поставщиком. Вы можете задать любое значение TTL в диапазоне от 30 минут до 7 дней. При изменении этого значения учитывайте следующее:
- Безопасность. Более короткие TTL обеспечивают более надежную защиту, поскольку они сокращают окно, в котором злоумышленник может использовать утекший или перехваченный токен.
- Производительность. Чем меньше TTL, тем чаще приложение будет выполнять проверку. Поскольку процесс проверки приложения добавляет задержку к сетевым запросам при каждом выполнении, короткий TTL может повлиять на производительность вашего приложения.
- Квота и стоимость. Короткие TTL и частая повторная аттестация быстрее расходуют квоту и могут повысить стоимость платных сервисов. Подробнее о квотах и лимитах…
Значение TTL по умолчанию (1 час) подходит для большинства приложений. Обратите внимание, что библиотека App Check обновляет токены примерно через половину времени TTL.
2. Добавьте библиотеку App Check в приложение
Для установки зависимостей Firebase и управления ими используйте Swift Package Manager.
Откройте проект приложения в Xcode и перейдите в меню File (Файл) > Add Packages (Добавить пакеты). Добавьте хранилище Firebase SDK для платформ Apple (
https://github.com/firebase/firebase-ios-sdk) и выберите библиотеку FirebaseAppCheck.
Дальнейшие действия
После установки библиотеки App Check в приложение начните распространять его обновленную версию среди пользователей.
Обновленное клиентское приложение начнет отправлять токены App Check с каждым запросом к Firebase, но продукты Firebase не будут требовать действительных токенов, пока вы не включите принудительное применение в разделе App Check консоли Firebase.
Отслеживайте показатели и включите принудительное применение
Однако прежде чем включить принудительное применение, убедитесь, что это не помешает вашим существующим добросовестным пользователям. С другой стороны, если вы видите подозрительное использование ресурсов приложения, то можете включить принудительное применение раньше.
Чтобы принять решение, вы можете посмотреть показатели App Check для используемых вами сервисов:
- Отслеживайте показатели запросов App Check для Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity для iOS, Maps JavaScript API и Places API (New).
- Отслеживайте показатели запросов App Check для Cloud Functions.
Включить меры App Check
Когда вы поймете, как App Check повлияет на пользователей, и будете готовы продолжить, вы сможете включить принудительное применение App Check:
- Включите принудительное применение App Check для Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity для iOS, Maps JavaScript API и Places API (New).
- Включите принудительное применение App Check для Cloud Functions.
Используйте App Check в средах отладки
Если после регистрации приложения в App Check вы хотите запустить его в среде, которую App Check обычно не классифицирует как действительную, например в симуляторе во время разработки или в среде непрерывной интеграции, вы можете создать отладочную сборку приложения, которая использует отладочный поставщик App Check вместо реального поставщика аттестации.
Подробнее о том, как использовать App Check с отладочным поставщиком на платформах Apple…