Firebase is back at Google I/O on May 10! Register now

Premiers pas avec App Check avec un fournisseur personnalisé sur les applications Web

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Cette page vous explique comment activer App Check dans une application Web à l'aide de votre fournisseur App Check personnalisé . Lorsque vous activez App Check, vous vous assurez que seule votre application peut accéder aux ressources Firebase de votre projet.

Si vous souhaitez utiliser App Check avec l'un des fournisseurs intégrés, consultez les documents pour App Check avec reCAPTCHA v3 et App Check avec reCAPTCHA Enterprise .

Avant que tu commences

1. Ajoutez la bibliothèque App Check à votre application

Ajoutez Firebase à votre application Web si vous ne l'avez pas déjà fait. Assurez-vous d'importer la bibliothèque App Check.

2. Créez l'objet fournisseur App Check

Créez un objet fournisseur App Check pour votre fournisseur personnalisé. Cet objet doit avoir une méthode getToken() , qui collecte toutes les informations requises par votre fournisseur App Check personnalisé comme preuve d'authenticité, et les envoie à votre service d'acquisition de jetons en échange d'un jeton App Check. Le SDK App Check gère la mise en cache des jetons, donc obtenez toujours un nouveau jeton dans votre implémentation de getToken() .

Web version 9

const { CustomProvider } = require("firebase/app-check");

const appCheckCustomProvider = new CustomProvider({
  getToken: () => {
    return new Promise((resolve, _reject) => {
      // TODO: Logic to exchange proof of authenticity for an App Check token and
      // expiration time.

      // ...

      const appCheckToken = {
        token: tokenFromServer,
        expireTimeMillis: expirationFromServer * 1000
      };

      resolve(appCheckToken);
    });
  }
});

Web version 8

const appCheckCustomProvider = {
  getToken: () => {
    return new Promise((resolve, _reject) => {
      // TODO: Logic to exchange proof of authenticity for an App Check token and
      // expiration time.

      // ...

      const appCheckToken = {
        token: tokenFromServer,
        expireTimeMillis: expirationFromServer * 1000
      };

      resolve(appCheckToken);
    });
  }
};

3. Initialiser App Check

Ajoutez le code d'initialisation suivant à votre application avant d'accéder aux services Firebase :

Web version 9

const { initializeApp } = require("firebase/app");
const { initializeAppCheck } = require("firebase/app-check");

const app = initializeApp({
  // Your firebase configuration object
});

const appCheck = initializeAppCheck(app, {
  provider: appCheckCustomProvider,

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  isTokenAutoRefreshEnabled: true    
});

Web version 8

firebase.initializeApp({
  // Your firebase configuration object
});

const appCheck = firebase.appCheck();
appCheck.activate(
  appCheckCustomProvider,

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  true);

Prochaines étapes

Une fois la bibliothèque App Check installée dans votre application, déployez-la.

L'application cliente mise à jour commencera à envoyer des jetons App Check avec chaque demande qu'elle adresse à 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

Avant d'activer l'application, cependant, vous devez vous assurer que cela ne perturbera pas vos utilisateurs légitimes existants. D'autre part, si vous constatez une utilisation suspecte des ressources de votre application, vous souhaiterez peut-être activer l'application plus tôt.

Pour vous aider à prendre cette décision, vous pouvez consulter les statistiques d'App Check pour les services que vous utilisez :

Activer l'application de la vérification des applications

Lorsque vous comprenez comment App Check affectera vos utilisateurs et que vous êtes prêt à continuer, vous pouvez activer l'application d'App Check :

Utiliser App Check dans les environnements de débogage

Si, après avoir enregistré votre application pour App Check, vous souhaitez exécuter votre application dans un environnement qu'App Check ne classerait normalement pas comme valide, comme localement 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.

Voir Utiliser App Check avec le fournisseur de débogage dans les applications Web .