Cette page vous explique comment activer App Check dans une application C++ à l'aide des fournisseurs par défaut : Play Integrity sur Android, et Device Check ou App Attest sur les plates-formes Apple. Lorsque vous activez App Check, vous vous assurez que seule votre application peut accéder aux ressources Firebase de votre projet. Consultez la présentation de cette fonctionnalité.
1. Configurer votre projet Firebase
Ajoutez Firebase à votre projet C++ si vous ne l'avez pas déjà fait.
Enregistrez vos applications pour utiliser App Check avec les fournisseurs Play Integrity, Device Check ou App Attest dans la section Paramètres du projet > App Check de la console Firebase.
Vous devez généralement enregistrer toutes les applications de votre projet, car une fois que vous avez activé l'application des règles pour un produit Firebase, seules les applications enregistrées pourront accéder aux ressources de backend du produit.
Pour obtenir des instructions détaillées sur l'inscription auprès de chaque fournisseur, consultez la documentation spécifique à Android et iOS.
Facultatif : Dans les paramètres d'enregistrement de l'application, définissez une valeur TTL (Time-To-Live) personnalisée pour les jetons App Check émis par le fournisseur. Vous pouvez définir la valeur TTL sur n'importe quelle valeur comprise entre 30 minutes et 7 jours. Lorsque vous modifiez cette valeur, tenez compte des compromis suivants :
- Sécurité : des valeurs TTL plus courtes offrent une sécurité renforcée, car elles réduisent la période pendant laquelle un jeton divulgué ou intercepté peut être utilisé à des fins malveillantes par un pirate informatique.
- Performances : des valeurs TTL plus courtes signifient que votre application effectuera l'attestation plus fréquemment. Étant donné que le processus d'attestation d'application ajoute de la latence aux requêtes réseau chaque fois qu'il est effectué, un TTL court peut avoir un impact sur les performances de votre application.
- Quota et coût : des TTL plus courts et une re-certification fréquente épuisent votre quota plus rapidement et peuvent entraîner des coûts plus élevés pour les services payants. Consultez la page Quotas et limites.
La valeur TTL par défaut est raisonnable pour la plupart des applications. Notez que la bibliothèque App Check actualise les jetons à environ la moitié de la durée de vie (TTL).
2. Ajouter la bibliothèque App Check à votre application
Incluez la bibliothèque App Check dans votre ensemble de dépendances en suivant les instructions de configuration pour App Check.
3. Initialiser App Check
Ajoutez le code d'initialisation suivant à votre application afin qu'il s'exécute avant que vous n'utilisiez les services Firebase, y compris la création d'applications Firebase.
Android
Incluez le fichier d'en-tête pour
firebase::app_check:#include "firebase/app_check.h"
Initialisez la bibliothèque App Check avec le fournisseur Play Integrity :
firebase::app_check::AppCheck::SetAppCheckProviderFactory( firebase::app_check::PlayIntegrityProviderFactory::GetInstance());
iOS+
Incluez le fichier d'en-tête pour
firebase::app_check:#include "firebase/app_check.h"
Initialisez la bibliothèque App Check avec le fournisseur Device Check ou App Attest :
firebase::app_check::AppCheck::SetAppCheckProviderFactory( firebase::app_check::DeviceCheckProviderFactory::GetInstance());
Étapes suivantes
Une fois la bibliothèque App Check installée dans votre application, commencez à distribuer l'application mise à jour à vos utilisateurs.
L'application cliente mise à jour commencera à envoyer des jetons App Check avec chaque requête qu'elle envoie à Firebase, mais les produits Firebase n'exigeront pas que les jetons soient valides tant que vous n'aurez pas activé l'application dans la section "App Check" de la console Firebase.
Surveiller les métriques et activer l'application
Toutefois, avant d'activer l'application, assurez-vous que cela ne perturbera pas vos utilisateurs légitimes existants. En revanche, si vous constatez une utilisation suspecte des ressources de votre application, vous pouvez activer l'application plus tôt.
Pour vous aider à prendre cette décision, vous pouvez consulter les métriques App Check pour les services que vous utilisez :
- Surveillez les métriques des requêtes App Check pour Realtime Database, Cloud Firestore et Cloud Storage.
- Surveillez les métriques des requêtes App Check pour Cloud Functions.
Activer l'application d'App Check
Lorsque vous comprenez l'impact d'App Check sur vos utilisateurs et que vous êtes prêt à continuer, vous pouvez activer l'application d'App Check :
- Activez l'application App Check pour Realtime Database, Cloud Firestore et Cloud Storage.
- Activez l'application App Check pour Cloud Functions.
Utiliser App Check dans les environnements de débogage
Si, après avoir enregistré votre application pour App Check, vous souhaitez l'exécuter dans un environnement qu'App Check ne classerait normalement pas comme valide (par exemple, sur un ordinateur, dans un émulateur pendant le développement ou à partir d'un environnement d'intégration continue (CI)), vous pouvez créer une version de débogage de votre application qui utilise le fournisseur de débogage App Check au lieu d'un véritable fournisseur d'attestation.
Consultez Utiliser App Check avec le fournisseur de débogage dans les applications C++.