Codelab בנושא App Check לאינטרנט

1. מבוא

העדכון האחרון: 23 בפברואר 2023

איך אפשר למנוע גישה לא מורשית למשאבים ב-Firebase?

אתם יכולים להשתמש ב-Firebase App Check כדי למנוע מלקוחות לא מורשים לגשת למשאבי הקצה העורפי שלכם. לשם כך, צריך לדרוש שהבקשות הנכנסות יגיעו עם אישור שהבקשה מגיעה מהאפליקציה האמיתית שלכם, ולחסום תנועה שלא כוללת אישור מתאים. Firebase App Check מסתמכת על ספקי אימות ספציפיים לפלטפורמה כדי לאמת את האותנטיות של הלקוח: באפליקציות אינטרנט, Firebase App Check תומכת ב-reCAPTCHA גרסה 3 וב-reCAPTCHA Enterprise כספקי אימות.

אפשר להשתמש ב-App Check כדי להגן על בקשות ל-Cloud Firestore, למסד נתונים בזמן אמת, ל-Cloud Functions, לאימות ב-Firebase עם Identity Platform ולשרתי קצה שאתם מארחים בעצמכם.

מה תפַתחו

ב-codelab הזה, תאבטחו אפליקציית צ'אט על ידי הוספה של App Check ואכיפה שלו.

אפליקציית הצ'אט הידידותית הראשונה שאתם יוצרים.

מה תלמדו

  • איך עוקבים אחרי הגישה לא מורשית לקצה העורפי
  • איך מוסיפים אכיפה ל-Firestore ול-Cloud Storage
  • איך מריצים את האפליקציה עם אסימון ניפוי באגים לפיתוח מקומי

מה תצטרכו

  • עורך הטקסט או סביבת הפיתוח המשולבת (IDE) שתבחרו
  • מנהל החבילות npm, שמגיע בדרך כלל עם Node.js
  • Firebase CLI מותקן ומוגדר לעבודה עם החשבון שלכם
  • טרמינל או מסוף
  • דפדפן לבחירתכם, כמו Chrome
  • קוד לדוגמה מתוך ה-codelab (בשלב הבא של ה-codelab מוסבר איך לקבל את הקוד).

2. קבלת קוד לדוגמה

משכפלים את מאגר הנתונים של GitHub של ה-codelab משורת הפקודה:

git clone https://github.com/firebase/codelab-friendlychat-web

לחלופין, אם Git לא מותקן אצלכם, אתם יכולים להוריד את המאגר כקובץ ZIP.

ייבוא אפליקציה לתחילת הדרך

באמצעות ה-IDE, פותחים או מייבאים את הספרייה 📁 appcheck-start ממאגר הנתונים המשוכפל. הספרייה 📁 appcheck-start מכילה את קוד ההתחלה של ה-Codelab, שיהיה אפליקציית אינטרנט צ'אט עם פונקציונליות מלאה. הספרייה 📁 appcheck תכיל את הקוד המלא של ה-Codelab.

3. יצירה והגדרה של פרויקט Firebase

יצירת פרויקט Firebase

  1. נכנסים למסוף Firebase באמצעות חשבון Google.
  2. לוחצים על הלחצן כדי ליצור פרויקט חדש, ואז מזינים שם לפרויקט (לדוגמה, FriendlyChat).
  3. לוחצים על המשך.
  4. אם מוצגת בקשה לעשות זאת, קוראים ומאשרים את התנאים של Firebase, ואז לוחצים על המשך.
  5. (אופציונלי) מפעילים את העזרה מבוססת-AI במסוף Firebase (שנקראת Gemini ב-Firebase).
  6. ב-codelab הזה לא צריך להשתמש ב-Google Analytics, ולכן משביתים את האפשרות Google Analytics.
  7. לוחצים על יצירת פרויקט, מחכים שהפרויקט יוקצה ולוחצים על המשך.

שדרוג תוכנית התשלומים של Firebase

כדי להשתמש ב-Cloud Storage for Firebase, הפרויקט ב-Firebase צריך להיות בתוכנית התמחור pay-as-you go (Blaze), כלומר הוא צריך להיות מקושר לחשבון לחיוב ב-Cloud.

  • בחשבון לחיוב ב-Cloud צריך להגדיר אמצעי תשלום, כמו כרטיס אשראי.
  • אם אתם חדשים ב-Firebase וב-Google Cloud, כדאי לבדוק אם אתם עומדים בדרישות לקבלת קרדיט בשווי 300$ותקופת ניסיון בחינם בחשבון לחיוב ב-Cloud.
  • אם אתם משתתפים ב-Codelab כחלק מאירוע, כדאי לשאול את מארגן האירוע אם יש קרדיטים ל-Cloud.

כדי לשדרג את הפרויקט לתוכנית Blaze, פועלים לפי השלבים הבאים:

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

הוספת אפליקציית אינטרנט של Firebase לפרויקט

  1. לוחצים על סמל האינטרנט 58d6543a156e56f9.png כדי ליצור אפליקציית אינטרנט חדשה ב-Firebase.
  2. רושמים את האפליקציה עם הכינוי Friendly Chat ומסמנים את התיבה לצד Also set up Firebase Hosting for this app (הגדרת אירוח ב-Firebase לאפליקציה הזו). לוחצים על Register app (רישום האפליקציה).
  3. בשלב הבא תופיע פקודה להתקנת Firebase באמצעות npm ואובייקט הגדרה. תעתיקו את האובייקט הזה בהמשך ה-codelab, אז בינתיים לוחצים על הבא.

החלון 'הוספת Firebase לאפליקציית האינטרנט שלך'

  1. אחרי זה תוצג לכם אפשרות להתקין את Firebase CLI. אם עדיין לא התקנתם את הכלי, עליכם לעשות זאת עכשיו באמצעות הפקודה npm install -g firebase-tools. לאחר מכן לוחצים על Next.
  2. אחרי זה תופיע אפשרות להתחבר ל-Firebase ולפרוס ל-Firebase Hosting. מתחברים ל-Firebase באמצעות הפקודה firebase login ואז לוחצים על המשך למסוף. בשלב מאוחר יותר תפרסו את האפליקציה באירוח ב-Firebase.

הגדרת מוצרי Firebase

האפליקציה שאנחנו הולכים לבנות משתמשת במוצרי Firebase שזמינים לאפליקציות אינטרנט:

  • אימות ב-Firebase כדי לאפשר למשתמשים להיכנס לאפליקציה בקלות.
  • ‫Cloud Firestore כדי לשמור נתונים מובנים בענן ולקבל התראה מיידית כשמתבצעים שינויים בנתונים.
  • ‫Cloud Storage for Firebase כדי לשמור קבצים בענן.
  • אירוח ב-Firebase כדי לארח את הנכסים שלכם ולמלא בקשות אליהם.
  • העברת הודעות בענן ב-Firebase כדי לשלוח התראות פוש ולהציג התראות קופצות בדפדפן.
  • מעקב אחר ביצועים ב-Firebase כדי לאסוף נתוני ביצועים של משתמשים באפליקציה.

כדי להשתמש בחלק מהמוצרים האלה, צריך לבצע הגדרה מיוחדת או להפעיל אותם באמצעות מסוף Firebase.

הפעלת הכניסה באמצעות חשבון Google באימות ב-Firebase

כדי לאפשר למשתמשים להיכנס לאפליקציית האינטרנט באמצעות חשבונות Google שלהם, נשתמש בשיטת הכניסה של Google.

צריך להפעיל את הכניסה באמצעות חשבון Google:

  1. במסוף Firebase, מאתרים את הקטע Build בחלונית הימנית.
  2. לוחצים על אימות, לוחצים על תחילת העבודה אם רלוונטי, ואז לוחצים על הכרטיסייה שיטת כניסה (או לוחצים כאן כדי לעבור ישירות לשם).
  3. הפעלת ספק הכניסה באמצעות חשבון Google
  4. מגדירים את השם של האפליקציה שמוצג לציבור ל-Friendly Chat ובוחרים כתובת אימייל לתמיכה בפרויקט מהתפריט הנפתח.
  5. לוחצים על שמירה.

f96888973c3d00cc.png

הגדרה של Cloud Firestore

אפליקציית האינטרנט משתמשת ב-Cloud Firestore כדי לשמור הודעות בצ'אט ולקבל הודעות חדשות בצ'אט.

כך מגדירים את Cloud Firestore בפרויקט Firebase:

  1. בחלונית הימנית במסוף Firebase, מרחיבים את Build ובוחרים באפשרות Firestore database.
  2. לוחצים על יצירת מסד נתונים.
  3. משאירים את הערך (default) בשדה Database ID.
  4. בוחרים מיקום למסד הנתונים ולוחצים על הבא.
    באפליקציה אמיתית, כדאי לבחור מיקום שקרוב למשתמשים.
  5. לוחצים על התחלת השימוש במצב בדיקה. קוראים את כתב הוויתור בנוגע לכללי האבטחה.
    בהמשך ה-Codelab הזה, תוסיפו כללי אבטחה כדי לאבטח את הנתונים. אל תפיצו או תחשפו אפליקציה באופן ציבורי בלי להוסיף כללי אבטחה למסד הנתונים.
  6. לוחצים על יצירה.

הגדרת Cloud Storage for Firebase

אפליקציית האינטרנט משתמשת ב-Cloud Storage for Firebase כדי לאחסן, להעלות ולשתף תמונות.

כך מגדירים את Cloud Storage for Firebase בפרויקט Firebase:

  1. בחלונית הימנית במסוף Firebase, מרחיבים את האפשרות Build (פיתוח) ובוחרים באפשרות Storage (אחסון).
  2. לוחצים על שנתחיל?.
  3. בוחרים מיקום לקטגוריית האחסון שמוגדרת כברירת מחדל.
    אפשר להשתמש בקטגוריות במיקומים US-WEST1, US-CENTRAL1 ו-US-EAST1 במסגרת המסלול 'תמיד בחינם' של Google Cloud Storage. התמחור והשימוש בקטגוריות בכל המיקומים האחרים מפורטים במאמר בנושא תמחור ושימוש ב-Google Cloud Storage.
  4. לוחצים על התחלת השימוש במצב בדיקה. קוראים את כתב הוויתור לגבי כללי האבטחה.
    בהמשך ה-Codelab, תוסיפו כללי אבטחה כדי לאבטח את הנתונים. אסור להפיץ או לחשוף אפליקציה באופן ציבורי בלי להוסיף כללי אבטחה לדלי האחסון.
  5. לוחצים על יצירה.

4. הגדרת Firebase

מהספרייה appcheck-start, מתקשרים אל:

firebase use --add

כשמוצגת בקשה, בוחרים את מזהה הפרויקט ומזינים כינוי לפרויקט ב-Firebase. בפרויקט הזה, אפשר פשוט לתת כינוי של default. בשלב הבא, צריך להגדיר את הפרויקט המקומי כך שיפעל עם Firebase.

  1. עוברים אל הגדרות הפרויקט במסוף Firebase.
  2. בכרטיס 'האפליקציות שלך', בוחרים את הכינוי של האפליקציה שרוצים ליצור בשבילה אובייקט הגדרה.
  3. בחלונית של קטע הקוד של Firebase SDK, בוחרים באפשרות Config (הגדרה).
  4. מעתיקים את קטע הקוד של אובייקט ההגדרה ומוסיפים אותו ל-appcheck-start/hosting/src/firebase-config.js. בהמשך ה-codelab מניחים שהמשתנה נקרא config.

firebase-config.js

const config = {
  apiKey: "API_KEY",
  authDomain: "PROJECT_ID.firebaseapp.com",
  databaseURL: "https://PROJECT_ID.firebaseio.com",
  projectId: "PROJECT_ID",
  storageBucket: "PROJECT_ID.firebasestorage.app",
  messagingSenderId: "SENDER_ID",
  appId: "APP_ID",
  measurementId: "G-MEASUREMENT_ID",
};

מאותה ספרייה appcheck-start, ואז להתקשר אל:

firebase experiments:enable webframeworks

הפעולה הזו מאפשרת תמיכה במסגרת אינטרנט שבאמצעותה נבנה הפרויקט הזה.

עכשיו אנחנו מוכנים להריץ את הפרויקט ולבדוק שפרויקט ברירת המחדל פועל.

5. ניסיון להשתמש באפליקציה בלי App Check

אחרי שהגדרתם את האפליקציה ואת ה-SDK, נסו להשתמש באפליקציה כמו שהיא נועדה במקור. קודם כול, מתקינים את כל יחסי התלות. במסוף, עוברים לספרייה appcheck-start/hosting. בתוך הספרייה הזו, מריצים את הפקודה npm install. הפעולה הזו מאחזרת את כל יחסי התלות כדי שהפרויקט יפעל. כדי להפעיל את האפליקציה במצב הנוכחי שלה, אפשר להריץ את הפקודה firebase serve. האפליקציה תבקש מכם להתחבר לחשבון Google. עשו זאת, ואז נסו לפרסם בצ'אט כמה הודעות וכמה תמונות.

אחרי שבדקתם את התוסף באופן מקומי, הגיע הזמן לראות אותו בסביבת הייצור. מריצים את הפקודה firebase deploy כדי לפרוס את אפליקציית האינטרנט באינטרנט. החלק הזה הוא שלב חשוב בהדגמה של אופן הפעולה של App Check בעולם האמיתי, כי הוא דורש הגדרה של דומיין לספק האישורים של reCAPTCHA Enterprise.

אנחנו מקווים שאתם נהנים מהיכולת שמוגדרת כברירת מחדל באפליקציה. פרסום הודעות בצ'אט וכל דבר אחר שצריך לעשות רק מאפליקציה כזו. החיסרון במצב הנוכחי הוא שכל מי שיש לו את הגדרות האפליקציה מהשלב הקודם יכול לגשת למשאבי ה-Backend. הם עדיין צריכים לפעול בהתאם לכללי האבטחה שמוגדרים במערכות Firestore ו-Cloud Storage, אבל מעבר לכך, הם עדיין יכולים לשלוח שאילתות, לאחסן נתונים ולגשת לנתונים שמאוחסנים שם.

בשלבים הבאים תצטרכו:

  • הרשמה ל-App Check
  • אימות האכיפה
  • התחלת אכיפת הכללים

6. הפעלה של App Check ואכיפה

נתחיל בהעתקת מפתח reCAPTCHA Enterprise לפרויקט והוספתו אל App Check. כדי להתחיל, נכנסים לקטע reCAPTCHA Enterprise במסוף Google Cloud. בוחרים את הפרויקט ומוצגת בקשה להפעלת reCAPTCHA Enterprise API. מפעילים את ה-API ומחכים כמה דקות עד שהתהליך יסתיים. אחר כך לוחצים על Create Key (יצירת מפתח) לצד Enterprise keys (מפתחות לארגונים). לאחר מכן, בקטע הזה, מציינים שם לתצוגה ובוחרים מפתח מסוג אתר. צריך לציין את הדומיינים שבהם האפליקציה מתארחת. מכיוון שאתם מתכננים לארח את האתר הזה באירוח ב-Firebase, אתם משתמשים בשם האירוח שמוגדר כברירת מחדל, שהוא בדרך כלל ${YOUR_PROJECT_ID}.web.app. אפשר למצוא את דומיין האירוח בקטע Hosting במסוף Firebase. אחרי שממלאים את הפרטים, לוחצים על סיום ואז על יצירת מפתח.

מסך ליצירת מפתח reCAPTCHA

אחרי שהתהליך מסתיים, מזהה מופיע בראש הדף פרטים חשובים.

חלון ההרשמה ל-reCAPTCHA Enterprise

אפשר להעתיק את המזהה הזה ללוח. זה המפתח שבו משתמשים ב-App Check. לאחר מכן, עוברים לחלק App Check במסוף Firebase ולוחצים על Get Started (תחילת העבודה). לאחר מכן לוחצים על הרשמה ואז על reCAPTCHA Enterprise ומדביקים את המזהה שהועתק בתיבת הטקסט של מפתח האתר של reCAPTCHA Enterprise. משאירים את שאר ההגדרות כברירת מחדל. הדף 'בדיקת אפליקציות' אמור להיראות כך:

חלון האפליקציות של App Check שבו רושמים את הטוקן של reCAPTCHA Enterprise

בקשות שלא אומתו ולא נאכפו

אחרי שרושמים את המפתח במסוף Firebase, חוזרים להפעלת האתר בדפדפן על ידי הפעלת הפקודה firebase serve. עכשיו אפליקציית האינטרנט פועלת באופן מקומי, ואפשר להתחיל לשלוח בקשות ל-Firebase backend שוב. הבקשות האלה נשלחות לקצה העורפי של Firebase, ולכן הן נבדקות על ידי App Check אבל לא נאכפות. כדי לראות את הסטטוס של הבקשות שמתקבלות, אפשר להיכנס לקטע Cloud Firestore בכרטיסייה APIs בדף App Check במסוף Firebase. מכיוון שעדיין לא הגדרתם את הלקוח לשימוש ב-App Check, אמור להופיע לכם משהו דומה לזה:

מרכז הבקרה של App Check מציג 100% בקשות לקוח לא מאומתות לאפליקציה שלכם.

בקצה העורפי מתקבלות 100% בקשות לא מאומתות. המסך הזה שימושי כי הוא מראה שכמעט כל הבקשות של הלקוחות מגיעות מלקוחות שלא שילבו את App Check.

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

בקשות לא מאומתות שנאכפו

לוחצים על הלחצן החלת מדיניות במסך הקודם, ואז לוחצים שוב על החלת מדיניות אם מתבקשים לעשות זאת.

לוח בקרה של מדדים לא מאומתים עם הכפתור 'אכיפה' מודגש

הפעולה הזו תתחיל לאכוף את השימוש ב-App Check. מעכשיו, המערכת תחסום בקשות לשירותי הבק-אנד שלא אומתו באמצעות ספק האימות שבחרתם (במקרה הזה reCAPTCHA Enterprise). חוזרים לאפליקציית האינטרנט הפועלת, שאמורה לפעול בכתובת http://localhost:5000. כשמרעננים את הדף ומנסים לקבל נתונים ממסד הנתונים, לא קורה כלום. אם פותחים את המסוף של Chrome כדי לקרוא את השגיאות, אמור להופיע משהו דומה לזה:

Uncaught Error in snapshot listener: FirebaseError: [code=permission-denied]: Missing or insufficient permissions.

התכונה 'בדיקת אפליקציות' חוסמת בקשות שלא עברו אסימון אימות תקף בבקשות שלהן למשאבי Firebase. בינתיים, אפשר להשבית את האכיפה של App Check. בקטע הבא מוסבר איך להוסיף את App Check של reCAPTCHA Enterprise לדוגמה של Friendly Chat.

7. הוספת מפתח reCAPTCHA Enterprise לאתר

אנחנו נוסיף את מפתח הארגון לבקשה שלך. קודם צריך לפתוח את hosting/src/firebase-config.js ולהוסיף את מפתח reCAPTCHA Enterprise לקטע הקוד הבא:

const reCAPTCHAEnterpriseKey = {
  // Replace with your recaptcha enterprise site key
  key: "Replace with your recaptcha enterprise site key"
};

אחרי שמסיימים את הפעולה הזו, פותחים את hosting/src/index.js ובשורה 51 מוסיפים ייבוא מ-firebase-config.js כדי לאחזר את מפתח reCAPTCHA, וגם מייבאים את ספריית App Check כדי שאפשר יהיה לעבוד עם ספק reCAPTCHA Enterprise.

// add from here
 import {
   initializeAppCheck,
   ReCaptchaEnterpriseProvider,
 } from 'firebase/app-check';
// to here

// replace this line
import { getFirebaseConfig } from './firebase-config.js';
// with this line
import { getFirebaseConfig, getReCaptchaKey } from './firebase-config.js';

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

import { getFirebaseConfig, getReCaptchaKey } from './firebase-config.js';
// add from here
 function setupAppCheck(app) {
   if(import.meta.env.MODE === 'development') {
     self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
   }
 }
// to here

עכשיו צריך להפעיל את App Check כדי לעבוד עם הספק שבחרתם – במקרה הזה, reCAPTCHA Enterprise. בנוסף, כדאי לרענן באופן אוטומטי את טוקן App Check ברקע, כדי למנוע עיכובים כלשהם באינטראקציה של המשתמש עם השירות שלכם במקרה שהטוקן של App Check לא עדכני.

function setupAppCheck(app) {
   if(import.meta.env.MODE === 'development') {
     self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
   }
// add from here
   // Create a ReCaptchaEnterpriseProvider instance using your reCAPTCHA Enterprise
   // site key and pass it to initializeAppCheck().
   initializeAppCheck(app, {
     provider: new ReCaptchaEnterpriseProvider(getReCaptchaKey()),
     isTokenAutoRefreshEnabled: true // Set to true to allow auto-refresh.
   });
// to here
 }

לבסוף, אחרי שמוודאים שהאפליקציה אותחלה, צריך לקרוא לפונקציה setupAppCheck שיצרתם. בתחתית הקובץ hosting/src/index.js, מוסיפים את הקריאה לשיטה שהוספתם לאחרונה.

const firebaseApp = initializeApp(getFirebaseConfig());
// add from here
setupAppCheck(firebaseApp);
// to here
getPerformance();
initFirebaseAuth();
loadMessages();

בדיקה מקומית קודם

קודם בודקים את האפליקציה באופן מקומי. אם האפליקציה לא פועלת כבר באופן מקומי, מריצים את הפקודה firebase serve. אפשר לראות שהאפליקציה עדיין לא נטענת באופן מקומי. הסיבה לכך היא שרשמתם רק את הדומיין של Firebase אצל ספק האימות של reCAPTCHA, ולא את הדומיין של localhost. אסור לרשום את localhost כדומיין מאושר, כי זה מאפשר למשתמשים לגשת לשרתי הקצה העורפי המוגבלים שלכם מאפליקציה שפועלת באופן מקומי במחשב שלהם. במקום זאת, מכיוון שהגדרתם self.FIREBASE_APPCHECK_DEBUG_TOKEN = true, כדאי לבדוק בלוח JavaScript אם יש שורה שנראית בערך כך:

App Check debug token: 55183c20-de61-4438-85e6-8065789265be. You will need to add it to your app's App Check settings in the Firebase console for it to work.

צריך לקחת את אסימון הניפוי באגים שסופק (בדוגמה הוא 55183c20-de61-4438-85e6-8065789265be) ולהזין אותו בהגדרות של App Check בתפריט האפשרויות הנוספות של האפליקציה.

לוח הבקרה של App Check שבו מצוין המיקום של Manage Debug Tokens (ניהול טוקנים לניפוי באגים)

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

דוגמה למילוי אסימון הניפוי באגים באמצעות כינוי

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

לניסיון בסביבת הייצור

אחרי שמוודאים ש-App Check פועל באופן מקומי, פורסים את אפליקציית האינטרנט בסביבת הייצור. מהטרמינל, מתקשרים שוב אל firebase deploy וטוענים מחדש את הדף. הפעולה הזו תארוז את אפליקציית האינטרנט שלכם כדי להפעיל אותה ב-Firebase Hosting. אחרי שהאפליקציה מתארחת ב-Firebase Hosting, נסו להיכנס לאפליקציה בכתובת ${YOUR_PROJECT_ID}.web.app. אפשר לפתוח את לוח Javascript, ואז לא אמור להופיע שם יותר אסימון ניפוי הבאגים, והצ'אטים אמורים להיטען בפרויקט. בנוסף, אחרי כמה רגעים של אינטראקציה עם האפליקציה, אפשר להיכנס אל הקטע App Check במסוף Firebase ולוודא שכל הבקשות לאפליקציה מאומתות.

8. כל הכבוד!

הוספת בהצלחה את Firebase App Check לאפליקציית אינטרנט.

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

מה השלב הבא?

כדי להוסיף את Firebase App Check אל:

מאמרי עזרה