Vous pouvez utiliser l'API Play Integrity pour protéger vos applications et vos jeux contre les interactions dangereuses. En identifiant ces interactions, votre application peut réagir de façon adéquate pour réduire les risques d'attaque et d'utilisation abusive.
Fonctionnement
L'API Play Integrity vous aide à protéger vos applications et vos jeux contre les utilisations abusives en vérifiant si les interactions des utilisateurs et les requêtes de serveur proviennent du binaire d'application non modifié, installé par Google Play et exécuté sur un appareil Android authentique (ou une instance authentique de Google Play Games pour PC). En détectant un large éventail de menaces (versions modifiées de votre application, appareils non fiables, environnements non fiables, par exemple), vous pouvez prendre les mesures appropriées pour réduire les attaques telles que la fraude, la tricherie et les accès non autorisés.
Lorsqu'un utilisateur effectue une action, votre application demande une évaluation de l'API Play Integrity. Le serveur Google Play renvoie une réponse chiffrée contenant une évaluation de l'intégrité que votre application transmet ensuite à votre serveur pour validation. Votre serveur backend utilise cette évaluation pour déterminer la procédure à suivre pour votre jeu ou votre application.
L'API renvoie des évaluations qui vous aident à détecter les menaces potentielles, y compris :
- Accès non autorisé : l'évaluation
accountDetailsvous aide à déterminer si l'utilisateur a installé ou payé votre application ou votre jeu à partir de Google Play. - Falsification de code : l'évaluation
appIntegrityvous aide à déterminer si vous interagissez avec votre binaire non modifié reconnu par Google Play. - Appareils à risque et environnements émulés : l'évaluation
deviceIntegrityvous aide à déterminer si votre application s'exécute sur un appareil Android certifié authentique ou sur une instance authentique de Google Play Games pour PC.
Important : Lorsque l'API Play Integrity évalue un environnement, elle utilise des signaux de sécurité intégrés au matériel qui sont très résistants aux attaques et aux contournements. L'API Play Integrity simplifie le travail d'intégration et la gestion continue des développeurs en éliminant la complexité des signaux et en atténuant les problèmes sur les différentes versions du SDK Android, les clés provisionnées par les fabricants d'appareils et les modèles d'appareils.
Les développeurs Google Play peuvent également choisir de recevoir des évaluations supplémentaires pour détecter un plus large éventail de menaces potentielles, y compris :
- Appareils non corrigés : la réponse
MEETS_STRONG_INTEGRITYdans l'évaluationdeviceIntegrityvous aide à déterminer si un appareil a appliqué les mises à jour de sécurité récentes (pour les appareils exécutant Android 13 ou version ultérieure). - Accès risqué par d'autres applications : l'évaluation
appAccessRiskVerdictvous aide à déterminer si des applications en cours d'exécution peuvent être utilisées pour effectuer des captures d'écran, afficher des superpositions ou contrôler l'appareil (par exemple, en utilisant de manière abusive l'autorisation d'accessibilité). - Logiciel malveillant connu : l'évaluation
playProtectVerdictvous aide à déterminer si Google Play Protect est activé et s'il a détecté des applications douteuses ou dangereuses installées sur l'appareil. - Hyperactivité : le niveau
recentDeviceActivityvous aide à déterminer si un appareil a récemment effectué un volume de requêtes anormalement élevé, ce qui pourrait indiquer un trafic automatisé et être le signe d'une attaque. - Utilisation abusive répétée et appareils réutilisés :
deviceRecall(bêta) vous aide à déterminer si vous interagissez avec un appareil que vous avez déjà signalé, même si votre application a été réinstallée ou si l'appareil a été réinitialisé.
L'API peut être utilisée sur les facteurs de forme Android, y compris les téléphones, les tablettes, les appareils pliables, Android Auto, Android TV, Android XR, ChromeOS, Wear OS et Google Play Games pour PC.
Astuces :
- Vous pouvez surveiller l'état de l'API Play Integrity et d'autres services Play à l'aide du tableau de bord sur l'état de Google Play.
- Pour que l'API Integrity fonctionne au mieux avec votre application, suivez chacune des pratiques recommandées dans la documentation du site pour les développeurs Android.
Configurer et gérer l'API Play Integrity
Activer l'API Integrity pour votre application
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "API Play Integrity".
- Cliquez sur Commencer.
- Sélectionnez "Associer un projet existant", puis le projet que vous souhaitez associer.
- Cliquez sur "Associer un projet Cloud".
Pour commencer à intégrer l'API Integrity dans votre application, procédez comme suit :
- Pour les applications Java/Kotlin, installez la dernière bibliothèque Android disponible pour l'API Play Integrity à partir du dépôt Maven de Google.
- Pour les jeux Unity, installez la dernière version des plug-ins Google Play pour Unity. Toutes les versions 2019.x, 2020.x et ultérieures sont compatibles. Si vous utilisez Unity 2018.x, installez la version 2018.4 ou une version ultérieure. Si vous utilisez Unity 2017.x, installez la version 2017.4.40 ou une version ultérieure. Unity 5.x et les versions antérieures ne sont pas compatibles.
- Pour les applications et les jeux natifs, installez la dernière version du SDK Play Core natif.
Pour commencer à utiliser l'API Play Integrity dans votre application ou votre jeu, vous pouvez maintenant suivre cette procédure sur le site Développeurs Android.
(Facultatif) Personnaliser les réponses de l'API Integrity
Pour savoir comment configurer les réponses de l'API Integrity, consultez le site pour les développeurs Android.
Pour modifier les réponses de l'API, procédez comme suit :
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "API Play Integrity".
- Cliquez sur Gérer.
- Faites défiler la page jusqu'à la section "Réponses".
- Cliquez sur Modifier.
- Cochez ou décochez les cases correspondant aux réponses d'API que vous souhaitez modifier.
- Cliquez sur Enregistrer les modifications.
Important : Les modifications apportées aux réponses de l'API sont prises en compte dès que vous les enregistrez, y compris lorsque votre application est en production. Avant de modifier les réponses de l'API dans la Play Console, vérifiez que votre serveur est prêt à les accepter.
(Facultatif) Configurer les paramètres des requêtes classiques
Par défaut, Google gère le chiffrement des réponses aux requêtes classiques. Toutefois, si vous le souhaitez, vous pouvez choisir de le gérer vous-même.
Pour gérer vous-même le chiffrement des réponses :
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "API Play Integrity".
- Cliquez sur Gérer.
- Faites défiler la page jusqu'à la section "Requêtes classiques". L'état par défaut indiqué à côté de "Chiffrement de réponse" est "Gérées par Google". Cliquez sur Modifier.
- Sélectionnez "Gérer et télécharger mes clés de chiffrement de réponse". Google va générer des clés de chiffrement de réponse que vous pourrez télécharger et gérer. Pour déchiffrer les réponses avec ces clés, vous devez modifier la logique de votre serveur backend.
- Suivez les instructions à l'écran pour générer un fichier .pem et importez-le afin de télécharger vos clés API.
- Cliquez sur Enregistrer les modifications.
- Un message à l'écran confirme que le mode de gestion du chiffrement des réponses a été modifié.
- Vos nouvelles clés de chiffrement de réponse seront automatiquement téléchargées. Vous pourrez toujours les télécharger plus tard en cliquant sur Télécharger les clés.
Si vous gérez vous-même vos clés et souhaitez qu'elles soient désormais gérées par Google, procédez comme suit :
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "API Play Integrity".
- Cliquez sur Gérer.
- Faites défiler la page jusqu'à la section "Requêtes classiques". L'état indiqué à côté de "Chiffrement de réponse" est "Autogérées", car vous avez auparavant choisi de gérer le chiffrement vous-même. Cliquez sur Modifier.
- Sélectionnez "Laisser Google gérer mon chiffrement de réponse (recommandé)", puis cliquez sur Enregistrer les modifications. Google va générer et gérer vos clés de chiffrement de réponse. Votre serveur backend doit appeler le serveur de Google Play pour déchiffrer les réponses.
Tester l'intégration de l'API Play Integrity
Pour tester l'intégration de l'API Integrity, vous pouvez configurer une liste de comptes Gmail. Commencez par vérifier que vos testeurs ont accès à votre version. Publiez votre application sur le canal de test interne ou sur le canal où vous souhaitez effectuer le test. Une fois cette étape effectuée, suivez les instructions expliquant comment gérer les testeurs à l'aide de leur adresse e-mail ou utiliser des groupes Google pour que vos testeurs puissent accéder à votre version.
Pour configurer un test, procédez comme suit :
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "API Play Integrity".
- Cliquez sur Gérer.
- Faites défiler la page jusqu'à la section "Tests".
- Cliquez sur Créer un test.
- Sélectionnez une liste de diffusion ou créez-en une.
- Cliquez sur Créer le test.
Personnaliser votre fiche Play Store lorsque des utilisateurs y accèdent à partir de la boîte de dialogue de l'API Integrity
Vous pouvez utiliser une boîte de dialogue de résolution de l'API Integrity pour inviter les utilisateurs qui ont obtenu votre application de manière non officielle à la télécharger depuis Google Play. Lorsque les utilisateurs appuient sur la boîte de dialogue, ils sont alors redirigés vers votre fiche Play Store, où ils peuvent appuyer sur le bouton d'installation (ou d'achat ou de mise à jour) pour ajouter l'application à leur bibliothèque Play.
Vous pouvez personnaliser les assets de votre fiche Play Store pour tous les utilisateurs qui appuient sur la boîte de dialogue de résolution de l'API Integrity, y compris le nom, l'icône, les descriptions et les assets graphiques de votre application. Pour personnaliser votre fiche Play Store lorsque des utilisateurs y accèdent à partir d'une boîte de dialogue de l'API Integrity :
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "API Play Integrity".
- Cliquez sur Gérer.
- Faites défiler la page jusqu'à la section "Personnaliser la fiche Play Store".
- Cliquez sur Créer une fiche.
- Suivez les instructions de la page Créer une fiche Play Store personnalisée, puis cliquez sur Enregistrer.
Vous pouvez également créer des fiches Play Store personnalisées pour les boîtes de dialogue de l'API Integrity directement depuis la page Fiches Play Store personnalisées :
- Ouvrez la Play Console, puis accédez à la page Fiches Play Store personnalisées (Accroître le nombre d'utilisateurs > Fiches Play Store personnalisées).
- Cliquez sur Créer une fiche, indiquez si vous souhaitez créer une fiche ou en dupliquer une, puis cliquez sur Suivant.
- Sous "Informations sur l'application", recherchez la section "Audience cible".
- Sélectionnez Par URL, puis saisissez "playintegrity" dans la zone de texte.
- Saisissez tous les autres détails, puis cliquez sur Enregistrer.
Remarque : Le paramètre d'URL "playintegrity" est un mot clé spécial réservé aux liens profonds d'intégrité. Vous devez donc le saisir tel quel lorsque vous configurez la fiche Play Store personnalisée.
Augmenter le nombre maximal de requêtes quotidiennes pour l'API Play Integrity
Par défaut, les applications peuvent envoyer jusqu'à 10 000 requêtes par jour à l'API Integrity.
Pour consulter le volume de requêtes que votre application envoie quotidiennement :
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "Surveiller l'API Play Integrity".
- Cliquez sur la fiche de surveillance pour ouvrir le rapport de l'API Integrity et consulter le nombre quotidien de requêtes.
Pour consulter le nombre maximal de requêtes quotidiennes de votre application :
- Ouvrez la Play Console, puis accédez à Protégé avec Play dans le menu de gauche.
- Faites défiler la page jusqu'à la section "API Play Integrity".
- Cliquez sur Gérer.
- Consultez votre quota quotidien.
Vous pouvez demander à pouvoir envoyer plus de 10 000 requêtes par jour. Pour cela :
- Vous devez vérifier que la logique d'API est correctement implémentée, y compris pour les nouvelles tentatives.
- Vous devez publier votre application sur Google Play en plus de la rendre disponible sur d'autres canaux de distribution.
Pour augmenter le nombre maximal de requêtes quotidiennes, remplissez ce formulaire.
Contenu associé
- Consultez la documentation sur l'API Play Integrity destinée aux développeurs
- Regardez cette vidéo de présentation de l'API Play Integrity.
- En savoir plus sur la page Protégé avec Play de la Play Console
- En savoir plus sur la page Protégé avec Play sur le site pour les développeurs Android