Play Integrity API позволяет выявлять опасные взаимодействия с приложениями и играми и принимать меры для снижения риска атак и нарушений.
Как это работает
Play Integrity API помогает защищать приложения и игры от злоупотреблений, проверяя, исходят ли действия пользователей и запросы к серверу из исполняемого файла приложения, которое не менялось, было установлено из Google Play и запущено на немодифицированном устройстве Android (или в подлинной версии Google Play Games на компьютере). Выявляя различные угрозы, такие как модифицированные версии приложения, ненадежные устройства и другие сомнительные источники, вы можете принимать необходимые меры для предотвращения атак и нарушений, в том числе мошенничества, жульничества и несанкционированного доступа.
Когда пользователь выполняет действие, ваше приложение запрашивает оценку Play Integrity API. Сервер Google Play возвращает зашифрованный ответ, который ваше приложение затем перенаправляет на ваш сервер для проверки. Внутренний сервер использует полученную оценку целостности, чтобы определить, что приложению или игре делать дальше.
API возвращает оценки, которые помогают выявлять потенциальные угрозы, в том числе:
- Несанкционированный доступ. Оценка
accountDetailsпозволяет определить, установил или оплатил ли пользователь ваше приложение или игру через Google Play. - Изменение кода. Оценка
appIntegrityпомогает узнать, используется ли неизмененная версия исполняемого файла, подтвержденная Google Play. - Опасные устройства и эмулируемые среды. Оценка
deviceIntegrityпозволяет выявить, запущено ли приложение на немодифицированном сертифицированном устройстве Android или в подлинной версии Google Play Games на компьютере.
Важно! При оценке среды Play Integrity API использует аппаратные защищенные сигналы, которые крайне устойчивы к атакам и попыткам обхода. Play Integrity API упрощает процессы интеграции и управления, избавляя разработчиков от необходимости разбираться в сложных сигналах и методах устранения проблем для различных версий Android SDK, моделей устройств и ключей, предоставленных их производителями.
Разработчики Google Play также могут получать дополнительные результаты оценки и выявлять более широкий спектр потенциальных угроз, в том числе:
- Устройства без исправлений. Ответ
MEETS_STRONG_INTEGRITYв оценкеdeviceIntegrityпомогает определить, установлены ли на устройстве недавние обновления системы безопасности (для устройств с Android 13 и более поздних версий). - Риск доступа со стороны других приложений. Оценка
appAccessRiskVerdictпозволяет узнать, запущены ли приложения, которые могут использоваться для записи экрана, показа оверлеев или управления устройством (например, путем злоупотребления разрешениями на доступ к специальным возможностям). - Известное вредоносное ПО. Оценка
playProtectVerdictпомогает выявить, включена ли Google Play Защита и обнаружены ли на устройстве подозрительные или опасные приложения. - Гиперактивность. Уровень
recentDeviceActivityпозволяет определить, отправляло ли устройство аномально высокое число запросов в последнее время. Это может указывать на автоматическую передачу трафика или атаку. - Повторные нарушения и неоднократное использование устройств. Оценка
deviceRecall(бета) помогает узнать, взаимодействуете ли вы с устройством, на котором вы уже отмечали нарушения, даже если приложение было переустановлено или настройки устройства были сброшены.
API можно использовать на устройствах Android всех типов, включая телефоны, планшеты, складные устройства, Android Auto, Android TV, Android XR, ChromeOS и Wear OS, а также в Google Play Games на компьютере.
Примечания
- Отслеживать статус Play Integrity API и других сервисов Google Play можно на панели Доступность сервисов Google Play.
- Чтобы использовать Integrity API с максимальной эффективностью, придерживайтесь рекомендаций из документации на сайте для разработчиков Android.
Как работать с Play Integrity API
Как включить Integrity API для приложения
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите страницу вниз до раздела Play Integrity API.
- Нажмите Начать.
- Выберите "Связать существующий проект" и укажите нужный проект.
- Нажмите "Установить связь с проектом".
Вот что нужно сделать, чтобы интегрировать Integrity API в приложение:
- Приложения Java или Kotlin. Установите последнюю версию библиотеки Android для Play Integrity API из хранилища Google Maven.
- Игры Unity. Установите последнюю версию плагинов Google Play для Unity. Поддерживаются версии 2019.x, 2020.x и более поздние. Для Unity 2018.x установите версию 2018.4 или более позднюю. Для Unity 2017.x установите версию 2017.4.40 или более позднюю. Unity 5.x и более ранних версий не поддерживается.
- Нативные приложения и игры. Установите последнюю версию нативного SDK Play Core.
Теперь вы можете реализовать обработку ответов Integrity API в коде приложения или игры.
Как настроить ответы Integrity API (необязательно)
Подробные инструкции можно найти на сайте для разработчиков Android.
Чтобы изменить ответы API, выполните следующие действия:
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите страницу вниз до раздела Play Integrity API.
- Нажмите Настроить.
- Прокрутите экран вниз до раздела "Ответы".
- Нажмите Изменить.
- Установите флажки для ответов API, которые нужно получать, и снимите для остальных.
- Нажмите Сохранить изменения.
Важно! Изменения в ответах API вступают в силу сразу после сохранения, в том числе для рабочей версии приложения. Перед тем как настроить ответы API в Play Console, убедитесь, что сервер готов их принимать.
Как изменить классические настройки запросов (необязательно)
По умолчанию шифрованием ответов на классические запросы управляет Google. Однако при желании вы можете управлять им самостоятельно.
Чтобы перейти на самостоятельное управление шифрованием, сделайте следующее:
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите страницу вниз до раздела Play Integrity API.
- Нажмите Настроить.
- Прокрутите экран вниз до раздела "Классические запросы". Для параметра "Шифрование ответов" по умолчанию задано значение "Под управлением Google". Нажмите Изменить.
- Выберите "Скачать ключи шифрования ответов и управлять ими самостоятельно". Google сгенерирует для вас ключи шифрования ответов, и вы сможете использовать их в своей системе управления. Обратите внимание, что вам придется изменить логику кода на внутреннем сервере, чтобы он мог расшифровывать ответы с помощью этих ключей.
- Следуйте инструкциям на экране, чтобы создать файл в формате PEM и загрузить его на сервер, а затем скачать ключи API.
- Нажмите Сохранить изменения.
- Появится сообщение о том, что способ управления ключами шифрования ответов обновлен.
- Новые ключи шифрования ответов будут скачаны автоматически. Вам также всегда будет доступна кнопка Скачать ключи.
Чтобы вернуть вариант "Под управлением Google", сделайте следующее:
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите страницу вниз до раздела Play Integrity API.
- Нажмите Настроить.
- Прокрутите экран вниз до раздела "Классические запросы". Для параметра "Шифрование ответов" задано значение "Под собственным управлением". Нажмите Изменить.
- Выберите "Разрешить Google управлять ключами шифрования ответов (рекомендуется)" и нажмите Сохранить изменения. Google будет генерировать для вас ключи шифрования ответов и управлять ими. Для расшифровки ответов вашему внутреннему серверу потребуется обращаться к серверу Google Play.
Как проверить интеграцию Play Integrity API
Вы можете создать список тестировщиков, используя их аккаунты Gmail. Чтобы предоставить доступ к вашему выпуску, опубликуйте приложение на канале внутреннего тестирования или другом выбранном вами канале. Затем следуйте инструкциям по управлению тестировщиками с помощью адресов электронной почты или Google Групп.
Чтобы настроить тестирование, выполните следующие действия:
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите страницу вниз до раздела Play Integrity API.
- Нажмите Настроить.
- Прокрутите экран вниз до раздела "Тестирование".
- Нажмите Создать тестирование.
- Выберите список электронных адресов или создайте новый.
- Нажмите Создать тестирование.
Как настроить страницу приложения для тех, кто переходит на нее из диалогового окна Integrity API
Вы можете показывать пользователям с неофициальной версией вашего приложения диалоговое окно Integrity API. Нажав на него, они будут переходить на страницу приложения в Google Play, на которой можно установить, купить или обновить ваш продукт, чтобы добавить его в свою библиотеку Google Play.
При желании настройте специальную страницу приложения для тех, кто переходит к нему из диалогового окна Integrity API. Например, вы можете изменить название приложения, описание, значок и графические объекты. Вот как это сделать:
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите вниз до раздела Play Integrity API.
- Нажмите Настроить.
- Прокрутите вниз до раздела "Специальные страницы приложения в Google Play".
- Выберите Создать страницу приложения.
- Выполните инструкции на странице Создание специальной страницы приложения в Google Play и нажмите Сохранить.
Вы также можете настроить страницу для пользователей, которые переходят в Google Play из диалогового окна Integrity API, прямо в разделе Специальные страницы приложения в Google Play. Для этого:
- Откройте Play Console и перейдите в раздел Специальные страницы приложения в Google Play (Привлечение пользователей > Специальные страницы приложения в Google Play).
- Выберите Создать страницу приложения. Укажите, хотите ли вы создать новую страницу или скопировать существующую, и нажмите Далее.
- В разделе "Информация о странице приложения" найдите пункт "Целевая аудитория".
- Выберите вариант По URL и введите "playintegrity" в текстовом поле.
- Укажите остальные данные и нажмите Сохранить.
Примечание. Параметр playintegrity – специальное ключевое слово для ссылок на контент, относящихся к системе защиты целостности, поэтому его нужно ввести без ошибок.
Как повысить лимит ежедневных запросов к Play Integrity API
По умолчанию приложения могут отправлять до 10 000 запросов к Integrity API в день.
Чтобы узнать, сколько запросов ежедневно выполняет ваше приложение, сделайте следующее:
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите страницу вниз до раздела отслеживания запросов к Play Integrity API.
- Нажмите на карточку мониторинга, чтобы открыть отчет об использовании Integrity API и посмотреть число ежедневных запросов.
Вот как узнать лимит ежедневных запросов для вашего приложения:
- Откройте Play Console и в меню слева выберите Защищено Google Play.
- Прокрутите страницу вниз до раздела Play Integrity API.
- Нажмите Настроить.
- Посмотрите дневную квоту.
Вы можете отправить запрос на повышение лимита в 10 000 запросов в день. Для этого необходимо:
- Правильно реализовать логику работы API, включая повторные запросы.
- Опубликовать приложение в Google Play, а также на других каналах распространения.
Чтобы увеличить максимальное количество запросов в день, заполните эту форму.
Статьи по теме
- Прочитайте документацию по Play Integrity API на сайте для разработчиков.
- Посмотрите ознакомительное видео о Play Integrity API.
- Узнайте больше о странице "Защищено Google Play" в Play Console.
- Узнайте больше о странице "Защищено Google Play" на сайте Android для разработчиков.