בדף הזה מוסבר איך להפעיל את App Check באפליקציית C++ באמצעות ספק App Check בהתאמה אישית. הפעלת App Check עוזרת לוודא שרק לאפליקציה תהיה גישה למשאבי Firebase של הפרויקט.
אם רוצים להשתמש ב-App Check עם ספקי ברירת המחדל, אפשר לעיין במאמר הפעלת App Check עם ספקי ברירת המחדל באמצעות C++.
לפני שמתחילים
מוסיפים את Firebase לפרויקט C++, אם עדיין לא עשיתם זאת.
1. הוספת הספרייה App Check לאפליקציה
כוללים את ספריית App Check בקבוצת יחסי התלות, לפי הוראות ההגדרה של App Check.
2. הטמעת הממשקים App Check
קודם כול צריך ליצור כיתות שמטמיעות את הממשקים AppCheckProvider
ו-AppCheckProviderFactory
.
לכיתה AppCheckProvider
צריכה להיות שיטה GetToken()
, שמאגרת את כל המידע שנחוץ לספק App Check המותאם אישית כהוכחת אותנטיות, ושולחת אותו לשירות קבלת האסימון בתמורה לאסימון App Check. ה-SDK של App Check מטפל בשמירת אסימונים במטמון, לכן תמיד צריך לקבל אסימון חדש בהטמעה של GetToken()
.
class YourCustomAppCheckProvider : public AppCheckProvider {
void GetToken(std::function<void(AppCheckToken, int, const std::string&)>
completion_callback) {
// Logic to exchange proof of authenticity for an App Check token and
// expiration time.
// ...
// Create AppCheckToken object.
AppCheckToken appCheckToken;
appCheckToken.token = token;
appCheckToken.expire_time_millis = expireTime;
completion_callback(appCheckToken, 0, "");
// Or, if needing to return an error
//completion_callback({}, error_code, "Error description");
}
};
בנוסף, מטמיעים מחלקה AppCheckProviderFactory
שיוצרת מופעים של ההטמעה של AppCheckProvider
:
class YourCustomAppCheckProviderFactory : public AppCheckProviderFactory {
AppCheckProvider* CreateProvider(App* app) {
// Create and return an AppCheckProvider object.
return new YourCustomAppCheckProvider(app);
}
}
3. אתחול של App Check
מוסיפים לאפליקציה את קוד האתחול הבא כדי שהוא ירוץ לפני שמשתמשים ב-SDK אחר של Firebase:
firebase::app_check::AppCheck::SetAppCheckProviderFactory(
YourCustomAppCheckProviderFactory::GetInstance());
השלבים הבאים
אחרי שספריית App Check מותקנת באפליקציה, אפשר להתחיל להפיץ את האפליקציה המעודכנת למשתמשים.
אפליקציית הלקוח המעודכנת תתחיל לשלוח אסימוני App Check יחד עם כל בקשה שהיא שולחת ל-Firebase, אבל מוצרי Firebase לא ידרשו שהאסימונים יהיו תקפים עד שתפעילו את האכיפה בקטע App Check במסוף Firebase.
מעקב אחרי המדדים והפעלת האכיפה
עם זאת, לפני שמפעילים את האכיפה, חשוב לוודא שהפעולה הזו לא תפריע למשתמשים החוקיים הקיימים. לעומת זאת, אם אתם מזהים שימוש חשוד במשאבי האפליקציה, מומלץ להפעיל את האכיפה מוקדם יותר.
כדי לעזור לכם לקבל את ההחלטה הזו, תוכלו לעיין במדדים של App Check בשירותים שבהם אתם משתמשים:
- מעקב אחרי מדדי הבקשות של App Check עבור Data Connect, Vertex AI in Firebase, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API ו-Places API (חדש).
- מעקב אחרי מדדי הבקשות של App Check עבור Cloud Functions.
הפעלת אכיפה של App Check
אחרי שתבחנו את ההשפעה של App Check על המשתמשים ותרגישו מוכנים להמשיך, תוכלו להפעיל את האכיפה של App Check:
- הפעלת אכיפת App Check עבור Data Connect, Vertex AI in Firebase, Realtime Database, Cloud Firestore, Cloud Storage, Authentication, Google Identity for iOS, Maps JavaScript API ו-Places API (חדש).
- מפעילים את אכיפת App Check עבור Cloud Functions.
שימוש ב-App Check בסביבות ניפוי באגים
אם אחרי שרושמים את האפליקציה ל-App Check רוצים להריץ אותה בסביבה שבדרך כלל App Check לא מסווגת כתקינה, כמו אמולטור במהלך הפיתוח או מסביבת אינטגרציה רציפה (CI), אפשר ליצור גרסה לניפוי באגים של האפליקציה שמשתמשת בספק ניפוי הבאגים של App Check במקום בספק אימות אמיתי.
אפשר לעיין במאמר שימוש ב-App Check עם ספק ניפוי הבאגים ב-C++.