Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Włącz wymuszanie sprawdzania aplikacji dla Cloud Functions

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Gdy zrozumiesz, w jaki sposób Kontrola aplikacji wpłynie na Twoich użytkowników i będziesz gotowy do kontynuowania, możesz włączyć wymuszanie kontroli aplikacji.

Aby rozpocząć wymuszanie wymagań dotyczących tokenów sprawdzania aplikacji w wywoływanych funkcjach Cloud Functions, zmodyfikuj funkcje, aby sprawdzić, czy istnieją prawidłowe tokeny sprawdzania aplikacji, jak pokazano poniżej. Gdy włączysz egzekwowanie, wszystkie niezweryfikowane żądania zostaną odrzucone.

  1. Zaktualizuj zależność firebase-functions w projekcie do wersji 4.0.0 lub nowszej:

    npm install firebase-functions@">=4.0.0"
    

    I zaktualizuj zależność Firebase firebase-admin swojego projektu do wersji 9.8.0 lub nowszej:

    npm install firebase-admin@">=9.8.0"
    
  2. Ustaw opcję środowiska wykonawczego enforceAppCheck dla swojej funkcji na 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. Dodaj czek dla context.app do swojej funkcji. Twoja funkcja powinna zakończyć się niepowodzeniem, jeśli context.app nie jest zdefiniowany.

    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. Ponownie wdróż swoje funkcje:

    firebase deploy --only functions
    

Po wdrożeniu tych zmian możliwe do wywołania Cloud Functions będzie wymagało prawidłowych tokenów App Check. Pakiety SDK klienta Cloud Functions automatycznie dołączają token sprawdzania aplikacji po wywołaniu funkcji, którą można wywołać.