שימוש בבדיקת האפליקציה עם ספק ניפוי הבאגים באפליקציות אינטרנט

אחרי שמפעילים את App Check בשירות לקצה העורפי, התכונות של האפליקציה שתלויות בשירות לקצה העורפי הזה לא יפעלו מ-localhost או מסביבת אינטגרציה רציפה (CI), כי הסביבות האלה לא נחשבות למכשירים תקינים. כדי להריץ את האפליקציה בסביבות האלה במהלך הפיתוח והבדיקות, צריך ליצור גרסת ניפוי באגים של האפליקציה שמשתמשת בApp Check ספק ניפוי באגים במקום בספק אימות בסביבת ייצור.

שימוש בספק אימות לצורכי ניפוי באגים ב-localhost

כך משתמשים בספק ניפוי הבאגים בזמן הפעלת האפליקציה מ-localhost (לדוגמה, במהלך פיתוח מקומי):

  1. בגרסת build לניפוי באגים, מפעילים את מצב ניפוי הבאגים על ידי הגדרת self.FIREBASE_APPCHECK_DEBUG_TOKEN ל-true לפני שמפעילים את App Check. לדוגמה:

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    firebase.appCheck().activate(/* site key or provider */);
    
  2. נכנסים לאפליקציית האינטרנט באופן מקומי ופותחים את הכלים למפתחים בדפדפן. במסוף הניפוי באגים יוצג אסימון ניפוי באגים:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678".
    You will need to safelist it in the Firebase console for it to work.
    
  3. רושמים את אסימון ניפוי הבאגים ב-App Check:

    1. במסוף Firebase, עוברים אל Security > App Check > הכרטיסייה Apps.

    2. מוצאים את האפליקציה, לוחצים על סמל האפשרויות הנוספות (3 נקודות) ובוחרים באפשרות ניהול של טוקנים לניפוי באגים.

    3. פועלים לפי ההוראות במסך כדי לרשום את אסימון הניפוי באגים.

    צילום מסך של פריט התפריט 'ניהול אסימוני ניפוי באגים' במסוף Firebase

אחרי שרושמים את הטוקן ב-App Check, שירותי ה-Backend יקבלו אותו כטוקן תקין.

הטוקן הזה מאפשר גישה לשירותי ה-Backend שלכם ללא מכשיר תקין, ולכן חשוב לשמור אותו פרטי. אל תבצעו commit של האסימון למאגר ציבורי או תשלחו אותו בגרסאות ייצור של האפליקציה. אם אסימון רשום ייפרץ, צריך למחוק אותו מיד באמצעות האפשרות ניהול אסימוני ניפוי באגים במסוף Firebase.

הטוקן הזה מאוחסן באופן מקומי בדפדפן שלכם, וישמש אתכם בכל פעם שתשתמשו באפליקציה באותו דפדפן ובאותו מחשב. אם רוצים להשתמש באסימון בדפדפן אחר או במכונה אחרת, צריך להגדיר את self.FIREBASE_APPCHECK_DEBUG_TOKEN למחרוזת האסימון במקום true.

שימוש בספק אימות לצורכי ניפוי באגים בסביבת CI

כך משתמשים בספק אימות לצורכי ניפוי באגים בסביבת אינטגרציה רציפה (CI):

  1. במסוף Firebase, יוצרים אסימון לניפוי באגים:

    1. במסוף Firebase, עוברים אל Security > App Check > הכרטיסייה Apps.

    2. מוצאים את האפליקציה, לוחצים על סמל האפשרויות הנוספות (3 נקודות) ובוחרים באפשרות ניהול של טוקנים לניפוי באגים.

    3. פועלים לפי ההוראות במסך כדי ליצור אסימון חדש לניפוי באגים.

    הטוקן הזה מאפשר גישה לשירותי ה-Backend שלכם ללא מכשיר תקין, ולכן חשוב לשמור אותו פרטי. אל תבצעו commit של האסימון למאגר ציבורי או תשלחו אותו בגרסאות ייצור של האפליקציה. אם אסימון רשום ייפרץ, צריך למחוק אותו מיד באמצעות האפשרות ניהול אסימוני ניפוי באגים במסוף Firebase.

    צילום מסך של הפריט Manage Debug Tokens (ניהול טוקנים לניפוי באגים) בתפריט

  2. מוסיפים את אסימון הניפוי באגים שיצרתם למאגר המפתחות המאובטח של מערכת ה-CI (לדוגמה, encrypted secrets ב-GitHub Actions או encrypted variables ב-Travis CI).

  3. אם צריך, מגדירים את מערכת ה-CI כך שאסימון הניפוי הבאגים יהיה זמין בסביבת ה-CI כמשתנה סביבה. נותנים למשתנה שם כמו APP_CHECK_DEBUG_TOKEN_FROM_CI.

  4. בגרסת build לניפוי באגים, מפעילים את מצב ניפוי הבאגים על ידי הגדרת self.FIREBASE_APPCHECK_DEBUG_TOKEN לערך של משתנה הסביבה של אסימון ניפוי הבאגים לפני שמייבאים את App Check. לדוגמה:

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    firebase.appCheck().activate(/* site key or provider */);
    

כשהאפליקציה פועלת בסביבת CI, שירותי ה-Backend יקבלו את האסימון שהיא שולחת כחוקי.