בדף הזה מוסבר איך להפעיל את 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. App Check SDK מטפל בשמירת טוקנים במטמון, לכן תמיד צריך לקבל טוקן חדש בהטמעה של 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 עבור Firebase AI Logic, Data Connect, 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 עבור Firebase AI Logic, Data Connect, 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++.