איך מונעים שימוש לרעה ב-Gemini API באמצעות Firebase App Check

כששולחים קריאה ל-API ישירות מאפליקציה לנייד או מאתר, ה-API חשוף לניצול לרעה על ידי לקוחות לא מורשים. אם רוצים לקרוא ל-Gemini API ישירות מהאפליקציה לנייד או מהאתר, צריך להגן עליו מפני ניצול לרעה באמצעות Firebase AI Logic ואכיפת Firebase App Check. כשמפעילים את App Check, המערכת מאפשרת רק בקשות נכנסות שאומתו כמגיעות מהאפליקציה בפועל ו/או ממכשיר שלא בוצעו בו שינויים.

דילוג להוראות ההגדרה

‫Firebase AI Logic מספק שער proxy שמאפשר לשלב עם Firebase App Check ולהגן על Gemini API כשמתבצעת קריאה ישירה על ידי אפליקציות לנייד ולאינטרנט. כשאוכפים את App Check ב-Firebase AI Logic, זה עוזר להגן גם על Gemini Developer API וגם על Agent Platform Gemini API (formerly Vertex AI).

‫App Check ל-Firebase AI Logic תומך גם בהגנה מפני הפעלה חוזרת, כלומר אפשר להשתמש באסימון App Check רק פעם אחת.


סיכום כללי של אופן הפעולה של App Check

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

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

האימות הזה מצורף לכל בקשה שהאפליקציה שולחת באמצעות SDK של Firebase AI Logic. כשאוכפים את App Check, בקשות מלקוחות בלי אימות תקין יידחו, וגם כל בקשה שמגיעה מאפליקציה או מפלטפורמה שלא אישרתם.

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

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

הגדר את App Check

ההוראות הבאות מותאמות להגדרת אכיפה של Firebase App Check ב-Firebase AI Logic.

שלב 1: אכיפת App Check

החל מתחילת יולי 2026, במהלך תהליך ההגדרה המודרך במסוף Firebase, מערכת Firebase אוכפת באופן אוטומטי את Firebase App Check עבור Firebase AI Logic כדי להגן על Gemini API.

עם זאת, אם כבר הגדרתם את Firebase AI Logic בפרויקט Firebase לפני תחילת יולי 2026 (או אם App Check לא נאכף מסיבה אחרת), אתם יכולים לאכוף את App Check בעצמכם לפי ההוראות הבאות.

  1. בודקים אם App Check כבר נאכף עבור Firebase AI Logic.

    1. במסוף Firebase, נכנסים לכרטיסייה Security ‏ > App Check ‏ > APIs.

    2. מוצאים את השורה של Firebase AI Logic. אם כתוב Unenforced, המשיכו לשלב הבא.

  2. לוחצים על השורה של Firebase AI Logic כדי לראות את תרשימי המדדים. מתחת לתרשימים האלה, לוחצים על הגדרה.

  3. במסך הראשון של תיבת הדו-שיח (Baseline protection), בוחרים באפשרות Enforced ולוחצים על Continue.

  4. במסך הבא (Replay protection), בוחרים באפשרות Disabled ולוחצים על Continue.

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

    לא צריך לרשום את האפליקציות אם רוצים לאכוף רק את App Check ומשתמשים רק בספק אימות לצורכי ניפוי באגים עם Firebase AI Logic באפליקציה בשלב טרום-ייצור. עם זאת, כשהאפליקציה מוכנה להפצה למשתמשי קצה, צריך לרשום את האפליקציות כחלק מההגדרה של ספק אימות בסביבת ייצור (כמו App Attest,‏ Play Integrity או reCAPTCHA Enterprise).

שלב 2: הגדרת ספק אימות לצורכי ניפוי באגים לפיתוח מקומי

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

Swift

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

  1. בפרויקט Xcode, מייבאים את FirebaseAppCheck ומפעילים את App Check באמצעות ה-factory של ספק אימות לצורכי ניפוי באגים לפני שמגדירים את Firebase.

    import SwiftUI
    import FirebaseCore
    import FirebaseAppCheck
    
    @main
    struct YourApp: App {
      init() {
        let providerFactory = AppCheckDebugProviderFactory()
        AppCheck.setAppCheckProviderFactory(providerFactory)
        FirebaseApp.configure()
      }
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
    
  2. איך מקבלים טוקן לניפוי באגים:

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

    2. פותחים את מסוף Xcode ומחפשים את אסימון ניפוי הבאגים של App Check. לדוגמה:

      <Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.
      
    3. מעתיקים את הטוקן (לדוגמה, 123a4567-b89c-12d3-e456-789012345678).

  3. רושמים את אסימון ניפוי הבאגים ב-App Check:

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

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

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

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

Kotlin

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

  1. בגרסת ה-build לניפוי באגים, מגדירים את App Check כך שישתמש ב-factory של ספק האימות לצורכי ניפוי באגים:

    Firebase.initialize(context = this)
    Firebase.appCheck.installAppCheckProviderFactory(
        DebugAppCheckProviderFactory.getInstance(),
    )
  2. איך מקבלים טוקן לניפוי באגים:

    1. מפעילים את האפליקציה באמולטור או במכשיר הבדיקה.

    2. מחפשים את אסימון ניפוי הבאגים App Check ביומנים. לדוגמה:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. מעתיקים את הטוקן (לדוגמה, 123a4567-b89c-12d3-e456-789012345678).

  3. רושמים את אסימון ניפוי הבאגים ב-App Check:

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

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

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

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

Java

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

  1. בגרסת ה-build לניפוי באגים, מגדירים את App Check כך שישתמש ב-factory של ספק האימות לצורכי ניפוי באגים:

    FirebaseApp.initializeApp(/*context=*/ this);
    FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
    firebaseAppCheck.installAppCheckProviderFactory(
            DebugAppCheckProviderFactory.getInstance());
  2. איך מקבלים טוקן לניפוי באגים:

    1. מפעילים את האפליקציה באמולטור או במכשיר הבדיקה.

    2. מחפשים את אסימון ניפוי הבאגים App Check ביומנים. לדוגמה:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. מעתיקים את הטוקן (לדוגמה, 123a4567-b89c-12d3-e456-789012345678).

  3. רושמים את אסימון ניפוי הבאגים ב-App Check:

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

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

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

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

Web

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

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

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    
  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. פועלים לפי ההוראות במסך כדי לרשום את אסימון ניפוי הבאגים.

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

Dart

iOS+‎

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

  1. מפעילים את App Check עם ספק האימות לצורכי ניפוי באגים מיד אחרי שמפעילים את אפליקציית Firebase:

    import 'package:flutter/material.dart';
    import 'package:firebase_core/firebase_core.dart';
    
    // Import the firebase_app_check plugin
    import 'package:firebase_app_check/firebase_app_check.dart';
    
    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
      await FirebaseAppCheck.instance.activate(
        // Set appleProvider to `AppleProvider.debug`
        appleProvider: AppleProvider.debug,
      );
      runApp(App());
    }
    
  2. מפעילים את הרישום ביומן של ניפוי הבאגים בפרויקט Xcode:

    1. פותחים את Product > Scheme > Edit scheme (מוצר > סכימה > עריכת הסכימה).
    2. בתפריט השמאלי, לוחצים על Run (הפעלה) ואז על הכרטיסייה Arguments (ארגומנטים).
    3. בקטע Arguments Passed on Launch, מוסיפים את הערך -FIRDebugEnabled.
  3. איך מקבלים טוקן לניפוי באגים:

    1. פותחים את ios/Runner.xcworkspace באמצעות Xcode ומפעילים את האפליקציה בסימולטור או במכשיר הבדיקה.

    2. פותחים את מסוף Xcode ומחפשים את אסימון ניפוי הבאגים של App Check. לדוגמה:

      <Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.
      
    3. מעתיקים את הטוקן (לדוגמה, 123a4567-b89c-12d3-e456-789012345678).

  4. רושמים את אסימון ניפוי הבאגים ב-App Check:

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

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

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

Android

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

  1. מפעילים את App Check עם ספק האימות לצורכי ניפוי באגים מיד אחרי שמפעילים את אפליקציית Firebase:

    import 'package:flutter/material.dart';
    import 'package:firebase_core/firebase_core.dart';
    
    // Import the firebase_app_check plugin
    import 'package:firebase_app_check/firebase_app_check.dart';
    
    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
      await FirebaseAppCheck.instance.activate(
        // Set androidProvider to `AndroidProvider.debug`
        androidProvider: AndroidProvider.debug,
      );
      runApp(App());
    }
    
  2. איך מקבלים טוקן לניפוי באגים:

    1. מפעילים את האפליקציה באמולטור או במכשיר הבדיקה.

    2. מחפשים את אסימון ניפוי הבאגים App Check ביומנים. לדוגמה:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. מעתיקים את הטוקן (לדוגמה, 123a4567-b89c-12d3-e456-789012345678).

  3. רושמים את אסימון ניפוי הבאגים ב-App Check:

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

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

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

אינטרנט

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

  1. בקובץ web/index.html, מפעילים את מצב ניפוי הבאגים על ידי הגדרת self.FIREBASE_APPCHECK_DEBUG_TOKEN ל-true:

    <body>
      <script>
        self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
      </script>
    
      ...
    
    </body>
    
  2. מפעילים את אפליקציית האינטרנט באופן מקומי ופותחים את הכלים למפתחים בדפדפן. במסוף ניפוי הבאגים, יופיע טוקן לניפוי באגים:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678".
    You will need to safelist it in the Firebase console for it to work.
    

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

  3. רושמים את אסימון ניפוי הבאגים ב-App Check:

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

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

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

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

Unity

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

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

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

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

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

  2. בקוד האתחול של האפליקציה, מוסיפים את הקוד הבא:

    using Firebase.AppCheck;
    
    void InitializeFirebase() {
      // Configure the Debug Provider factory with your debug token.
      DebugAppCheckProviderFactory.Instance.SetDebugToken("YOUR_DEBUG_TOKEN");
    
      // Set App Check to use the debug provider factory
      FirebaseAppCheck.SetAppCheckProviderFactory(
        DebugAppCheckProviderFactory.Instance);
    
      // Proceed to initialize Firebase as normal
    }
    

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

שלב 3: הגדרת App Check למשתמשי קצה ולסביבת הייצור

כשתהיו מוכנים להשיק את האפליקציה למשתמשי קצה, תצטרכו לרשום את האפליקציות ולהגדיר ספק אימות לסביבת הייצור (כמו App Attest,‏ Play Integrity או reCAPTCHA Enterprise).

  1. בוחרים ספק אימות ייצור ופועלים לפי הוראות ההטמעה בקישורים הבאים:

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

  2. (מומלץ) כדי לשפר את ההגנה, מוסיפים הגנה מפני הפעלה חוזרת, כלומר אפשר להשתמש באסימון App Check רק פעם אחת.

שיפור ההגנה באמצעות הוספת הגנה מפני הפעלה חוזרת

מומלץ להשתמש בגרסאות העדכניות ביותר של ה-SDK, אבל כדי להשתמש בהגנה מפני הפעלה חוזרת, צריך לוודא שמשתמשים לפחות באחת מהגרסאות הבאות:
פלטפורמות של אפל מגרסה 12.2.0 ואילך | Android BoM מגרסה 34.14.0 ואילך (App Check מגרסה 19.1.0 ואילך) | אינטרנט מגרסה 12.14.0 ואילך | Flutter מגרסה 4.15.0 ואילך (App Check מגרסה 4.10.0 ואילך) | Unity מגרסה 13.12.0 ואילך

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

עם זאת, אתם יכולים לשפר את ההגנה מעבר להגנה הבסיסית הזו על ידי אכיפת הגנה מפני התקפות Replay, שמשתמשת במקום זאת בטוקנים לשימוש מוגבל. כשמפעילים את ההגנה מפני התקפות Replay, קורים הדברים הבאים:

  • ‫App Check יחסום בקשות אל Firebase AI Logic שמשתמשות בטוקנים לסשנים. במקום זאת, App Check יאשר בקשה ל-Firebase AI Logic רק אם היא משתמשת בטוקן חדש לשימוש מוגבל.

  • אחרי שהטוקן לשימוש מוגבל מאומת, הוא נצרך כך שאפשר להשתמש בו רק פעם אחת, וכך נמנעות מתקפות מסוג Replay.

  • ‫SDK של App Check יוצר טוקן חדש לשימוש מוגבל לכל בקשה. חשוב לזכור שהתהליך הזה יכול להשפיע על הבקשות שלכם, כי הוא מוסיף זמן אחזור ולפעמים גם עלות (בהתאם לספק האימות).

הגדרה ואכיפה של הגנה מפני הפעלה חוזרת

כדי לראות תוכן וקוד שספציפיים לספק, לוחצים על הספק Gemini API בדף הזה.

כך מגדירים ואוכפים הגנה מפני הפעלה חוזרת:

  1. אם עדיין לא עשיתם את זה, הגדירו את App Check לפי ההוראות שמופיעות למעלה בדף הזה.

  2. מפעילים את השימוש בטוקנים לשימוש מוגבל.

    באפליקציה, במהלך יצירת המופע, מגדירים את הפרמטר useLimitedUseAppCheckTokens לערך true:

    Swift

    
    // ...
    
    // During instantiation, enable usage of limited-use tokens.
    let ai = FirebaseAI.firebaseAI(
      backend: .googleAI(),
      useLimitedUseAppCheckTokens: true
    )
    
    // ...
    
    

    Kotlin

    
    // ...
    
    // During instantiation, enable usage of limited-use tokens.
    val ai = Firebase.ai(
      backend = GenerativeBackend.googleAI(),
      useLimitedUseAppCheckTokens = true
    )
    
    // ...
    
    

    Java

    
    // ...
    
    // During instantiation, enable usage of limited-use tokens.
    FirebaseAI ai = FirebaseAI.getInstance(
      /* backend: */ GenerativeBackend.googleAI(),
      /* useLimitedUseAppCheckTokens: */ true
    );
    
    // ...
    
    

    Web

    
    // ...
    
    // During instantiation, enable usage of limited-use tokens.
    const ai = getAI(firebaseApp, {
      backend: new GoogleAIBackend(),
      useLimitedUseAppCheckTokens: true
    });
    
    // ...
    
    

    Dart

    
    // ...
    
    // During instantiation, enable usage of limited-use tokens
    final ai = await FirebaseAI.googleAI(
      useLimitedUseAppCheckTokens: true,
    );
    
    // ...
    
    

    Unity

    // ...
    
    // During instantiation, enable usage of limited-use tokens
    var ai = FirebaseAI.GetInstance(
      useLimitedUseAppCheckTokens: true
    );
    
    // ...
    
  3. אכיפת הגנה מפני הפעלה חוזרת.

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

    2. במסוף Firebase, נכנסים לקטע Security (אבטחה) > App Check.

    3. הרחבת תצוגת המדדים של Firebase AI Logic.

    4. מוודאים שהאפשרות Baseline protection מוגדרת כ-Enforced ולוחצים על Continue.

    5. בקטע Replay protection, בוחרים באפשרות Unenforced (monitoring only)‎ או Enforced.

      כדי להחליט מתי לאכוף הגנה מפני הפעלה חוזרת, כדאי להביא בחשבון את הנקודות הבאות:

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

      • אפשר לעקוב באופן ספציפי אחרי המדד Unverified: Reused token, שהוא מספר הבקשות שיש להן אסימון שכבר נעשה בו שימוש בבקשה קודמת. אפשר לעקוב אחרי המדד הזה במסוף Firebase (עוברים אל Security‏ > App Check‏ > הכרטיסייה APIs).

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

איך Firebase AI Logic משתלב עם App Check

כדי להשתמש בערכות ה-SDK של Firebase AI Logic, צריך להפעיל את ממשק ה-API של Firebase AI Logic (firebasevertexai.googleapis.com) בפרויקט ב-Firebase. הסיבה לכך היא שהבקשות שנשלחות על ידי ערכות ה-SDK של Firebase AI Logic נשלחות קודם לשרת של Firebase AI Logic, שפועל כשער proxy שבו מתבצע האימות של Firebase App Check לפני שהבקשה יכולה להמשיך אל Gemini API ולגשת למודלים של Gemini.

שאלות נפוצות ופתרון בעיות

שאלות נפוצות ופתרון בעיות או קודי שגיאה נוספים שקשורים ל-Firebase AI Logic.