התחל להשתמש ב-App Check עם SafetyNet באנדרואיד

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

אם ברצונך להשתמש ב-App Check עם ספק מותאם אישית משלך, ראה יישום ספק App Check מותאם אישית .

1. הגדר את פרויקט Firebase שלך

  1. הוסף את Firebase לפרויקט Android שלך אם עדיין לא עשית זאת.

  2. רשום את האפליקציות שלך כדי להשתמש ב-App Check עם ספק SafetyNet בקטע App Check של מסוף Firebase. יהיה עליך לספק את טביעת האצבע SHA-256 של אישור החתימה של האפליקציה שלך.

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

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

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

    ברירת המחדל של TTL של שעה אחת היא סבירה עבור רוב האפליקציות. שים לב שספריית App Check מרעננת אסימונים בערך במחצית משך ה-TTL.

2. הוסף את ספריית App Check לאפליקציה שלך

בקובץ Gradle של המודול (ברמת האפליקציה) (בדרך כלל app/build.gradle ), הכריז על התלות של ספריית App Check עבור Android:

dependencies {
    implementation 'com.google.firebase:firebase-appcheck-safetynet:16.1.2'
}

3. אתחול App Check

הוסף את קוד האתחול הבא לאפליקציה שלך כך שהיא תפעל לפני שתשתמש ב-SDK אחר של Firebase:

Kotlin+KTX

Firebase.initialize(context = this)
Firebase.appCheck.installAppCheckProviderFactory(
    SafetyNetAppCheckProviderFactory.getInstance()
)

Java

FirebaseApp.initializeApp(/*context=*/ this);
FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
firebaseAppCheck.installAppCheckProviderFactory(
        SafetyNetAppCheckProviderFactory.getInstance());

הצעדים הבאים

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

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

עקוב אחר מדדים ואפשר אכיפה

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

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

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

כשתבין כיצד בדיקת אפליקציות תשפיע על המשתמשים שלך ואתה מוכן להמשיך, תוכל להפעיל את אכיפת בדיקת האפליקציה:

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

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

ראה שימוש ב-App Check עם ספק ניפוי הבאגים ב-Android .