תחילת השימוש ב-App Check עם reCAPTCHA גרסה 3 באפליקציות אינטרנט

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

לתשומת ליבך: גרסה 3 של reCAPTCHA לא גלויה למשתמשים. ספק reCAPTCHA גרסה 3 לא מחייב את המשתמשים לפתור אתגר בכל שלב. במסמכי התיעוד של reCAPTCHA v3

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

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

  1. מוסיפים את Firebase לפרויקט JavaScript אם עדיין לא עשיתם זאת כבר עשו זאת.

  2. רושמים את האתר לגרסה 3 של reCAPTCHA ומקבלים מפתח האתר והמפתח הסודי של reCAPTCHA v3.

  3. רושמים את האפליקציות לשימוש ב-App Check אצל ספק reCAPTCHA בקטע App Check במסוף Firebase. תצטרכו לספק את מפתח הסוד שקיבלתם בשלב הקודם.

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

  4. אופציונלי: בהגדרות של רישום האפליקציה, מגדירים אורך חיים (TTL) מותאם אישית לאסימוני App Check שהונפקו על ידי הספק. אפשר להגדיר את ה-TTL לכל ערך בין 30 דקות ל-7 ימים. כשמשנים את הערך הזה, חשוב לזכור את הפשרות הבאות:

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

אחרי שתבחנו איך App Check ישפיע על המשתמשים שלכם ותהיה לכם כוונה להמשיך, תוכלו להפעיל את האכיפה של App Check:

שימוש ב-App Check בסביבות ניפוי באגים

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

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