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

1. מבוא

תאריך עדכון אחרון: 23 בפברואר 2023

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

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

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

מה תפַתחו

בקודלאב הזה תלמדו לאבטח אפליקציית צ'אט על ידי הוספה ואכיפה של בדיקת האפליקציה.

אפליקציית הצ'אט הפשוטה שפותחת את העבודה, אותה אתם יוצרים.

מה תלמדו

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

מה צריך להכין

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

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

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

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

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

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

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

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

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

  1. נכנסים ל-Firebase.
  2. במסוף Firebase, לוחצים על 'הוספת פרויקט' ומעניקים לפרויקט ב-Firebase את השם FriendlyChat. חשוב לזכור את מזהה הפרויקט ב-Firebase.
  3. מבטלים את הסימון של האפשרות 'הפעלת Google Analytics בפרויקט הזה'.
  4. לוחצים על Create Project.

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

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

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

שדרוג של תוכנית התמחור ב-Firebase

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

  • בחשבון לחיוב ב-Cloud נדרש אמצעי תשלום, כמו כרטיס אשראי.
  • אם אתם משתמשים חדשים ב-Firebase וב-Google Cloud, כדאי לבדוק אם אתם זכאים לקרדיט בסך 300$ולחשבון לחיוב ב-Cloud בתקופת ניסיון בחינם.
  • אם אתם מבצעים את הקודלאב הזה כחלק מאירוע, כדאי לשאול את המארגן אם יש זיכויים ב-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 ואובייקט תצורה. מעתיקים את האובייקט הזה בהמשך הקודלאב, לכן בינתיים לוחצים על הבא.

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

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

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

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

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

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

f96888973c3d00cc.png

הגדרת Cloud Firestore

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

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

  1. בחלונית הימנית של מסוף Firebase, מרחיבים את Build ובוחרים באפשרות Firestore database.
  2. לוחצים על Create database.
  3. משאירים את הערך (default) בשדה Database ID.
  4. בוחרים מיקום למסד הנתונים ולוחצים על הבא.
    באפליקציה אמיתית, כדאי לבחור מיקום קרוב למשתמשים.
  5. לוחצים על התחלה במצב בדיקה. קוראים את כתב הוויתור לגבי כללי האבטחה.
    בהמשך הסדנה תוסיפו כללי אבטחה כדי לאבטח את הנתונים. אסור להפיץ או לחשוף אפליקציה באופן ציבורי בלי להוסיף כללי אבטחה למסד הנתונים.
  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. לוחצים על התחלה במצב בדיקה. קוראים את כתב הוויתור לגבי כללי האבטחה.
    בהמשך הסדנה תוסיפו כללי אבטחה כדי לאבטח את הנתונים. אין להפיץ או לחשוף אפליקציה באופן ציבורי בלי להוסיף כללי אבטחה לקטגוריית האחסון.
  5. לוחצים על יצירה.

4. הגדרת Firebase

בספרייה appcheck-start, מריצים את הפקודה:

firebase use --add

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

  1. עוברים אל הגדרות הפרויקט במסוף Firebase.
  2. בכרטיס 'האפליקציות שלך', בוחרים את הכינוי של האפליקציה שעבורה צריך אובייקט תצורה.
  3. בוחרים באפשרות Config בחלונית של קטע הקוד של Firebase SDK.
  4. מעתיקים את קטע הקוד של אובייקט התצורה ומוסיפים אותו לקובץ appcheck-start/hosting/src/firebase-config.js. בשאר הקוד של הסדנה נעשה שימוש בשם 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. איך בודקים את האפליקציה בלי 'בדיקת האפליקציה'

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

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

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

בשלבים הבאים:

  • הרשמה לבדיקה של האפליקציה
  • אימות האכיפה
  • מתחילים לאכוף את הכללים

6. הפעלת בדיקת האפליקציות והאכיפה

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

המסך של יצירת מפתח ב-reCAPTCHA

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

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

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

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

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

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

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

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. אסימון ניפוי הבאגים לא אמור להופיע יותר במסוף, וצ'אטים אמורים להיטען בפרויקט. בנוסף, אחרי שתעבדו עם האפליקציה במשך כמה רגעים, תוכלו להיכנס אל הקטע 'בדיקת אפליקציה' במסוף Firebase ולבדוק שכל הבקשות לאפליקציה עוברות אימות.

8. כל הכבוד!

מזל טוב, הוספת בהצלחה את Firebase App Check לאפליקציית אינטרנט!

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

מה השלב הבא?

במאמרים הבאים מוסבר איך מוסיפים את Firebase App Check ל:

מסמכי עזרה