בדף הזה מוסבר איך להפעיל את App Check באפליקציית אינטרנט באמצעות הספק המובנה של reCAPTCHA v3. הפעלת App Check עוזרת לוודא שרק לאפליקציה שלכם תהיה גישה למשאבי Firebase של הפרויקט. סקירה כללית של התכונה
הערה: reCAPTCHA בגרסה 3 לא גלוי למשתמשים. ספק reCAPTCHA גרסה 3 לא ידרוש מהמשתמשים לפתור אתגר בשום שלב. ראו את מאמרי העזרה בנושא ReCAPTCHA v3.
כדי להשתמש ב-App Check עם ספק מותאם אישית, קראו את המאמר הטמעה של ספק App Check בהתאמה אישית.
1. הגדרת פרויקט Firebase
מוסיפים את Firebase לפרויקט JavaScript, אם עדיין לא עשיתם זאת.
רוצים לרשום את האתר ל-reCAPTCHA v3? תוכלו לקבל את מפתח האתר ואת המפתח הסודי של reCAPTCHA v3.
עליך לרשום את האפליקציות כדי להשתמש ב-App Check אצל ספק ה-reCAPTCHA בקטע App Check במסוף Firebase. תצטרכו לספק את מפתח הסוד שקיבלתם בשלב הקודם.
בדרך כלל צריך לרשום את כל האפליקציות של הפרויקט, כי אחרי שמפעילים אכיפה במוצר של Firebase, רק אפליקציות רשומות יכולות לגשת למשאבי הקצה העורפי של המוצר.
אופציונלי: בהגדרות הרישום של האפליקציה, מגדירים אורך חיים (TTL) בהתאמה אישית לאסימונים של App Check שהונפקו על ידי הספק. אפשר להגדיר את TTL לכל ערך בין 30 דקות ל-7 ימים. כשמשנים את הערך הזה, חשוב לזכור את הפשרות הבאות:
- אבטחה: זמן חיים קצר יותר של אסימון מספק אבטחה חזקה יותר, כי הוא מצמצם את החלון שבו תוקף יכול לנצל לרעה אסימון שדלף או נתפס.
- ביצועים: ככל שזמן החיים של התגים קצר יותר, כך האפליקציה תבצע אימות בתדירות גבוהה יותר. תהליך האימות של האפליקציה מוסיף זמן אחזור לבקשות הרשת בכל פעם שהוא מתבצע, ולכן TTL קצר יכול להשפיע על הביצועים של האפליקציה.
- מכסה ועלות: משך זמן קצר יותר ואימות מחדש תכוף ממצים את המכסה מהר יותר. בשירותים בתשלום, העלות עשויה להיות גבוהה יותר. מידע נוסף זמין במאמר מכסות ומגבלות.
ברירת המחדל של TTL היא יום אחד, והיא מתאימה לרוב האפליקציות. חשוב לזכור שהספרייה App Check מרעננת את האסימונים בערך במחצית משך ה-TTL.
2. הוספת הספרייה App Check לאפליקציה
מוסיפים את Firebase לאפליקציית האינטרנט, אם עדיין לא עשיתם זאת. חשוב לייבא את הספרייה App Check.
3. אתחול של App Check
מוסיפים את קוד האתחול הבא לאפליקציה לפני שמקבלים גישה לשירותי Firebase. תצטרכו להעביר את מפתח האתר של reCAPTCHA שיצרתם במסוף reCAPTCHA אל activate()
.
Web
import { initializeApp } from "firebase/app"; import { initializeAppCheck, ReCaptchaV3Provider } from "firebase/app-check"; const app = initializeApp({ // Your firebase configuration object }); // Pass your reCAPTCHA v3 site key (public key) to activate(). Make sure this // key is the counterpart to the secret key you set in the Firebase console. const appCheck = initializeAppCheck(app, { provider: new ReCaptchaV3Provider('abcdefghijklmnopqrstuvwxy-1234567890abcd'), // Optional argument. If true, the SDK automatically refreshes App Check // tokens as needed. isTokenAutoRefreshEnabled: true });
Web
firebase.initializeApp({ // Your firebase configuration object }); const appCheck = firebase.appCheck(); // Pass your reCAPTCHA v3 site key (public key) to activate(). Make sure this // key is the counterpart to the secret key you set in the Firebase console. appCheck.activate( 'abcdefghijklmnopqrstuvwxy-1234567890abcd', // Optional argument. If true, the SDK automatically refreshes App Check // tokens as needed. true);
השלבים הבאים
אחרי שהספרייה App Check תותקן באפליקציה, צריך לפרוס אותה.
אפליקציית הלקוח המעודכנת תתחיל לשלוח אסימוני App Check יחד עם כל בקשה שהיא שולחת ל-Firebase, אבל מוצרי Firebase לא ידרשו שהאסימונים יהיו תקפים עד שתפעילו את האכיפה בקטע App Check במסוף Firebase.
מעקב אחרי מדדים והפעלת אכיפה
עם זאת, לפני שמפעילים את האכיפה, חשוב לוודא שהפעולה הזו לא תפריע למשתמשים החוקיים הקיימים. לעומת זאת, אם אתם רואים שימוש חשוד במשאבי האפליקציה, מומלץ להפעיל את האכיפה מוקדם יותר.
כדי לעזור לכם לקבל את ההחלטה הזו, תוכלו לעיין במדדים של App Check בשירותים שבהם אתם משתמשים:
- מעקב אחרי מדדי הבקשות של App Check עבור Realtime Database, Cloud Firestore, Cloud Storage, Authentication (בטא) ו-Vertex AI in Firebase.
- מעקב אחר מדדי הבקשות של App Check עבור Cloud Functions.
הפעלת אכיפה של App Check
אחרי שתבחנו איך App Check ישפיע על המשתמשים שלכם ותהיה לכם כוונה להמשיך, תוכלו להפעיל את האכיפה של App Check:
- מפעילים את האכיפה של App Check עבור Realtime Database, Cloud Firestore, Cloud Storage, Authentication (בטא) ו-Vertex AI in Firebase.
- מפעילים את אכיפת App Check עבור Cloud Functions.
שימוש ב-App Check בסביבות ניפוי באגים
אחרי שרושמים את האפליקציה ל-App Check רוצים להריץ את האפליקציה בסביבה שבדרך כלל App Check לא מסווגת כתקינה, כמו מקומית בזמן פיתוח או מסביבת אינטגרציה רציפה (CI), אפשר ליצור גרסת build לניפוי באגים של האפליקציה שמשתמשת בספק ניפוי הבאגים App Check במקום בספק אימות אמיתי.
מידע נוסף זמין במאמר שימוש ב-App Check עם ספק ניפוי הבאגים באפליקציות אינטרנט.