بدء استخدام ميزة "فحص التطبيق" مع مقدِّم خدمة مخصّص باستخدام C++

توضّح لك هذه الصفحة كيفية تفعيل App Check في تطبيق C++ باستخدام موفّر App Check المخصّص. عند تفعيل App Check، يمكنك المساعدة في ضمان أنّ تطبيقك فقط يمكنه الوصول إلى موارد Firebase الخاصة بمشروعك.

إذا كنت تريد استخدام App Check مع مقدّمي الخدمات التلقائيين، يمكنك الاطّلاع على تفعيل App Check مع مقدّمي الخدمات التلقائيين باستخدام 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

أضِف رمز الإعداد التالي إلى تطبيقك ليتم تشغيله قبل استخدام أي حِزم تطوير برامج أخرى من Firebase:

firebase::app_check::AppCheck::SetAppCheckProviderFactory(
    YourCustomAppCheckProviderFactory::GetInstance());

الخطوات التالية

بعد تثبيت مكتبة App Check في تطبيقك، ابدأ في توزيع التطبيق المحدَّث على المستخدمين.

سيبدأ تطبيق العميل المعدَّل في إرسال رموز App Check مع كل طلب يرسله إلى Firebase، ولكن لن تتطلّب منتجات Firebase أن تكون الرموز صالحة إلى أن تفعّل فرض استخدامها في قسم App Check ضِمن وحدة تحكّم Firebase.

مراقبة المقاييس وتفعيل التنفيذ

قبل تفعيل فرض استخدام المصادقة الثنائية، عليك التأكّد من أنّ ذلك لن يؤدي إلى تعطيل حسابات المستخدمين الحاليين الذين لديهم أذونات صحيحة. من ناحية أخرى، إذا لاحظت استخدامًا مشبوهًا لموارد تطبيقك، ننصحك بتفعيل خيار فرض القيود في أقرب وقت.

للمساعدة في اتّخاذ هذا القرار، يمكنك الاطّلاع على مقاييس App Check للخدمات التي تستخدمها:

تفعيل تنفيذ App Check

بعد فهم كيفية تأثير App Check في المستخدمين والاستعداد للمتابعة، يمكنك تفعيل فرض App Check باتّباع الخطوات التالية:

استخدام App Check في بيئات تصحيح الأخطاء

إذا أردت تشغيل تطبيقك في بيئة لا يصنّفها App Check عادةً على أنّها صالحة، مثل محاكي أثناء التطوير أو من بيئة دمج مستمر (CI)، بعد تسجيل تطبيقك في App Check، يمكنك إنشاء إصدار تصحيح أخطاء من تطبيقك يستخدم موفّر تصحيح الأخطاء App Check بدلاً من موفّر تصديق حقيقي.

اطّلِع على استخدام App Check مع موفّر تصحيح الأخطاء باستخدام C++‎.