Cette page 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. En activant App Check, vous vous assurez que seule votre application peut accéder aux ressources Firebase de votre projet. Consultez une 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 Project Settings > App Check (Paramètres du projet > App Check) de la console Firebase.
En règle générale, vous devez enregistrer toutes les applications de votre projet, car une fois l'application forcée pour un produit Firebase, seules les applications enregistrées pourront accéder aux ressources backend du produit.
Pour obtenir des instructions détaillées sur l'enregistrement 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 personnalisée. (TTL) pour les jetons App Check émis par le fournisseur. Vous pouvez définir la valeur TTL sur une valeur comprise entre 30 minutes et 7 jours. Lorsque vous modifiez cette valeur, les compromis suivants:
- Sécurité: des valeurs TTL plus courtes renforcent la sécurité, car cela réduit dans laquelle un jeton fuit ou intercepté peut être utilisé de manière abusive par ou d'un pirate informatique.
- Performances: des TTL plus courtes signifient que votre application effectuera davantage l'attestation fréquemment. Étant donné que le processus d'attestation d'application ajoute une latence aux requêtes réseau chaque fois qu'il est exécuté, un TTL court peut avoir un impact sur les performances de votre application.
- Quota et coût: des valeurs TTL plus courtes et des réattestations fréquentes épuisent quota plus court et, pour les services payants, coûtent potentiellement plus cher. Voir les quotas et limites.
La valeur TTL par défaut est raisonnable pour la plupart des applications. Notez que la bibliothèque App Check est actualisée jetons à environ la moitié de la durée 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 d'App Check.
3. Initialiser App Check
Ajoutez le code d'initialisation suivant à votre application pour qu'il s'exécute avant que vous n'utilisiez des 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"
Initialiser la bibliothèque App Check avec Device Check ou App Attest fournisseur:
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 la version mise à jour à vos utilisateurs.
L'application cliente mise à jour commencera à envoyer des jetons App Check avec chaque requête envoyée à 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 forcée
Toutefois, avant d'activer l'application, vous devez vous assurer que cela de perturber vos utilisateurs légitimes existants. D'un autre côté, si vous voyez en cas d'utilisation suspecte de vos ressources d'application, vous pouvez plus tôt.
Pour vous aider à prendre votre décision, vous pouvez consulter les métriques App Check pour le que vous utilisez:
- Surveiller les métriques des requêtes App Check pour Realtime Database, Cloud Firestore et Cloud Storage.
- Surveillez les métriques de requêtes App Check pour Cloud Functions.
Activer App Check
Une fois que vous avez compris l'impact d'App Check sur vos utilisateurs et que vous êtes prêt à vous pouvez activer App Check:
- Activez l'application de la vérification des applications pour Realtime Database, Cloud Firestore et Cloud Storage.
- Activez l'application de la vérification des applications 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 de bureau, sur un émulateur pendant le développement ou à partir d'un environnement d'intégration continue (CI)), vous pouvez créer un build 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++.