获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

אפשר אכיפת בדיקת אפליקציות עבור פונקציות ענן

כשתבין כיצד בדיקת אפליקציות תשפיע על המשתמשים שלך ואתה מוכן להמשיך, תוכל להפעיל אכיפת בדיקת אפליקציות.

כדי להתחיל לאכוף את דרישות ה-App Check token בפונקציות הענן הניתנות להתקשרות, שנה את הפונקציות שלך כדי לבדוק אם קיימים אסימוני App Check חוקיים, כפי שמוצג להלן. לאחר שתפעיל אכיפה, כל הבקשות שלא אומתו יידחו.

  1. עדכן את התלות ב- firebase-functions של הפרויקט שלך לגרסה 4.0.0 ואילך:

    npm install firebase-functions@">=4.0.0"
    

    ועדכן את התלות ב- firebase-admin של הפרויקט שלך לגרסה 9.8.0 ואילך:

    npm install firebase-admin@">=9.8.0"
    
  2. הגדר את אפשרות הריצה של enforceAppCheck עבור הפונקציה שלך ל- 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. הוסף סימון עבור context.app לפונקציה שלך. הפונקציה שלך אמורה להיכשל אם context.app לא מוגדר.

    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. פרוס מחדש את הפונקציות שלך:

    firebase deploy --only functions
    

לאחר פריסת השינויים הללו, פונקציות הענן הניתנות להתקשרות ידרשו אסימוני App Check חוקיים. ערכות ה-SDK של לקוח Cloud Functions מצרף אוטומטית אסימון App Check כאשר אתה מפעיל פונקציה הניתנת להתקשרות.