Activer l'application d'App Check

Lorsque vous comprenez l'impact de App Check sur vos utilisateurs et que vous êtes prêt à continuer, vous pouvez activer l'application de App Check.

Les étapes suivantes décrivent comment activer l'application pour Firebase AI Logic, SQL Connect, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity pour iOS, l'API Maps JavaScript et l'API Places (nouvelle). Une fois que vous avez activé l'application pour un produit, toutes les requêtes non validées adressées à ce produit seront refusées.

  1. Dans la console Firebase, accédez à Security > App Check.

  2. Développez la vue des métriques du produit pour lequel vous souhaitez activer l'application.

  3. Cliquez sur Enforce (Appliquer), puis confirmez votre choix.

Notez que l'application peut prendre jusqu'à 15 minutes après l'activation de la mesure d'application pour prendre effet.

Protection contre les attaques de répétition (bêta)

Par défaut, App Check utilise des jetons de session dont la valeur TTL (Time To Live) configurable est comprise entre 30 minutes et 7 jours. Ces jetons de session sont mis en cache par le SDK App Check, sont envoyés avec les requêtes de votre application et peuvent être réutilisés jusqu'à l'expiration de leur valeur TTL. L'utilisation de jetons de session est considérée comme une protection de base.

Pour renforcer la protection au-delà de la protection de base offerte par App Check, vous pouvez éventuellement appliquer la protection contre les attaques de répétition. Voici ce qui se passe lorsque vous appliquez la protection contre les attaques de répétition :

  • App Check will bloquer les requêtes adressées à l'API protégée qui utilisent des jetons de session. Au lieu de cela, App Check autorise uniquement les requêtes adressées à l' API protégée qui utilisent un jeton à usage limité nouvellement généré. Pour savoir comment activer l'utilisation de jetons à usage limité dans votre application, consultez la documentation spécifique au produit.

  • Une fois le jeton à usage limité validé, il est consommé afin de ne pouvoir être utilisé qu'une seule fois, ce qui empêche les attaques de répétition.

  • Le SDK App Check génère un nouveau jeton pour chaque requête. Ce processus peut avoir un impact sur vos requêtes en ajoutant une certaine latence et parfois un coût (en fonction de votre fournisseur d'attestation).

Voici comment appliquer la protection contre les attaques de répétition :

  1. Dans le codebase de votre application, activez l'utilisation de jetons à usage limité. Pour obtenir ces instructions, consultez la documentation spécifique au produit :

  2. Dans la console Firebase, accédez à Security > App Check.

  3. Développez la vue des métriques de l'API protégée.

  4. Assurez-vous que la protection de base est appliquée, puis cliquez sur Continue (Continuer).

  5. Pour la protection contre les attaques de répétition, choisissez Unenforced (monitoring only) (Non appliqué (surveillance uniquement)) ou Enforced (Appliqué).

    Tenez compte des points suivants pour décider quand appliquer la protection contre les attaques de répétition :

    • Nous vous recommandons de surveiller vos requêtes si un nombre important de vos utilisateurs sont susceptibles d'utiliser des versions antérieures de votre application sans que les jetons à usage limité soient activés. Si vous appliquez immédiatement la protection contre les attaques de répétition, les requêtes de ces utilisateurs seront bloquées.

    • Dans l'onglet Security > App Check > APIs (Sécurité > App Check > API) de la console Firebase, vous pouvez surveiller la métrique Unverified: Reused token (Non validé : jeton réutilisé), qui correspond au nombre de requêtes comportant un jeton déjà utilisé dans une requête précédente. Si une partie importante des requêtes récentes appartient à cette catégorie, vous devez éviter de perturber les utilisateurs et envisager d'attendre que davantage d'utilisateurs mettent à jour votre application avant d'activer l'application.