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

Activer l'application d'App Check pour Cloud Functions

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

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

Pour commencer à appliquer les exigences de jeton App Check dans vos fonctions cloud appelables, modifiez vos fonctions pour rechercher des jetons App Check valides, comme indiqué ci-dessous. Une fois que vous avez activé l'application, toutes les demandes non vérifiées seront rejetées.

  1. Mettez à jour la dépendance firebase-functions de votre projet vers la version 4.0.0 ou une version plus récente :

    npm install firebase-functions@">=4.0.0"
    

    Et mettez à jour la dépendance firebase-admin de votre projet vers la version 9.8.0 ou plus récente :

    npm install firebase-admin@">=9.8.0"
    
  2. Définissez l'option d'exécution enforceAppCheck pour votre fonction sur true :

    exports.yourCallableFunction = functions.
      .runWith({
        enforceAppCheck: true  // Requests without valid App Check tokens will be rejected.
      })
      .https.onCall((data, context) => {
        // Your function logic follows.
      });
    
  3. Ajoutez une vérification pour context.app à votre fonction. Votre fonction devrait échouer si context.app n'est pas défini.

    exports.yourCallableFunction = functions.https.onCall((data, context) => {
      // context.app will be undefined if the request doesn't include an
      // App Check token. (If the request includes an invalid App Check
      // token, the request will be rejected with HTTP error 401.)
      if (context.app == undefined) {
        throw new functions.https.HttpsError(
            'failed-precondition',
            'The function must be called from an App Check verified app.')
      }
    
      // Your function logic follows.
    });
    
  4. Redéployez vos fonctions :

    firebase deploy --only functions
    

Une fois ces modifications déployées, vos fonctions Cloud appelables nécessiteront des jetons App Check valides. Les SDK clients Cloud Functions associent automatiquement un jeton App Check lorsque vous appelez une fonction appelable.