بدء استخدام ميزة "فحص التطبيق" في تطبيقات C++
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توضح لك هذه الصفحة كيفية تفعيل ميزة "فحص التطبيق" في تطبيق C++ ، باستخدام
مزوّدي الخدمة التلقائيين: Play Integrity على Android وميزة "فحص الجهاز" أو "تأكيد التطبيق"
ومنصات Apple. عند تفعيل ميزة "فحص التطبيقات"، فإنك تساعد في التأكد من
يمكن لتطبيقك فقط الوصول إلى موارد Firebase لمشروعك. يمكنك الاطّلاع على
نظرة عامة حول هذه الميزة
1- إعداد مشروع Firebase
أضِف Firebase إلى مشروع C++ إذا لم يسبق لك
إجراء ذلك.
سجِّل تطبيقاتك لاستخدام ميزة "فحص التطبيق" مع موفّري ميزة "سلامة التطبيق" أو "فحص الجهاز"
أو "إثبات صحة التطبيق" في القسم
إعدادات المشروع > فحص التطبيق
في وحدة تحكّم Firebase.
تحتاج عادةً إلى تسجيل جميع تطبيقات مشروعك، لأنه بمجرد
تفعيل إجراءات التنفيذ لمنتج في Firebase، ستتمكّن التطبيقات المسجَّلة فقط
للوصول إلى موارد الواجهة الخلفية للمنتج.
للحصول على تعليمات تفصيلية حول كيفية التسجيل مع كل مقدّم خدمة، يُرجى الاطّلاع على
الوثائق الخاصة بنظامي التشغيل Android وiOS.
اختياري: في إعدادات تسجيل التطبيق، حدِّد فترة زمنية مخصّصة للانتشار
(TTL) لرموز "فحص التطبيق" الصادرة عن موفّر الخدمة. يمكنك ضبط وقت الاستبدال
على أي قيمة تتراوح بين 30 دقيقة و7 أيام. عند تغيير هذه القيمة، يجب مراعاة المفاضلات التالية:
- الأمان: توفر فترات TTL الأقصر مستوى أمان أعلى، لأنه يقلل من
يمكن فيها إساءة استخدام رمز مميز تم تسريبه أو اعتراضه من خلال
مهاجم.
- الأداء: تعني مدد مدة البقاء (TTL) الأقصر أنّ تطبيقك سيُجري عملية إثبات الهوية بشكلٍ
أكثر تكرارًا. بما أنّ عملية إثبات ملكية التطبيق تضيف وقت استجابة إلى طلبات
الشبكة في كل مرة يتم فيها تنفيذها، يمكن أن تؤثّر مدة بقاء قصيرة في
أداء تطبيقك.
- الحصة والتكلفة: فترات بقاء أقصر وعمليات إعادة المصادقة المتكررة تؤدي إلى استنفاد
حصة أكبر، وقد تكون تكلفة الخدمات المدفوعة أعلى.
راجِع الحصص .
إنّ مهلة TTL التلقائية
مناسبة لمعظم التطبيقات. يُرجى العلم أنّه تتم إعادة تحميل مكتبة فحص التطبيقات.
في نصف مدة TTL تقريبًا.
2- إضافة مكتبة App Check إلى تطبيقك
أدرِج مكتبة App Check في مجموعة التبعيات، باتّباع تعليمات الإعداد الخاصة بها.
3- إعداد فحص التطبيق
أضِف رمز الإعداد التالي إلى تطبيقك ليتم تشغيله قبل
استخدام أي من خدمات Firebase، بما في ذلك أي إنشاء لتطبيقات Firebase.
Android
تضمين ملف العنوان لـ firebase::app_check
:
#include "firebase/app_check.h"
إعداد مكتبة "فحص التطبيق" باستخدام موفِّر Play Integrity:
firebase::app_check::AppCheck::SetAppCheckProviderFactory(
firebase::app_check::PlayIntegrityProviderFactory::GetInstance());
iOS+
تضمين ملف العنوان لـ firebase::app_check
:
#include "firebase/app_check.h"
يمكنك إعداد مكتبة App Check باستخدام موفِّر Device Check أو App Attest:
firebase::app_check::AppCheck::SetAppCheckProviderFactory(
firebase::app_check::DeviceCheckProviderFactory::GetInstance());
الخطوات التالية
بعد تثبيت مكتبة "فحص التطبيقات" في تطبيقك، ابدأ في توزيع
تحديث التطبيق للمستخدمين لديك.
سيبدأ تطبيق العميل المعدَّل بإرسال الرموز المميّزة لفحص التطبيقات مع كل
طلب يُرسله إلى Firebase، ولكن لن تشترط منتجات Firebase أن تكون الرموز المميّزة
صالحة إلى أن تفعِّل فرض الفحص في قسم "فحص التطبيقات" ضمن
وحدة تحكّم Firebase.
مراقبة المقاييس وتفعيل التنفيذ
ومع ذلك، قبل تفعيل التنفيذ، يجب التأكّد من أنّ ذلك لن يؤدي إلى
تعطيل المستخدمين الشرعيين الحاليين من ناحية أخرى، إذا رأيت
أي استخدام مريب لموارد تطبيقك، قد تحتاج إلى تفعيل إجراءات التنفيذ
قريبًا.
للمساعدة في اتخاذ هذا القرار، يمكنك الاطّلاع على مقاييس "فحص التطبيق"
الخدمات التي تستخدمها:
تفعيل ميزة فرض فحص التطبيقات
عندما تفهم تأثير فحص التطبيقات على المستخدمين وكنت مستعدًا لذلك
للمتابعة، يمكنك تفعيل تنفيذ ميزة "فحص التطبيقات":
استخدام ميزة "فحص التطبيقات" في بيئات تصحيح الأخطاء
إذا أردت بعد تسجيل تطبيقك في App Check تشغيله في بيئة لا يصنفها App Check عادةً على أنّها صالحة،
مثل أجهزة الكمبيوتر المكتبي أو المحاكي أثناء التطوير أو من بيئة دمج برمجي مستمر (CI)، يمكنك إنشاء إصدار تصحيح أخطاء من تطبيقك يستخدم مقدّم تصحيح أخطاء App Check بدلاً من مقدّم شهادة إثبات الهوية الفعلي.
راجِع استخدام ميزة "فحص التطبيق" مع موفِّر تصحيح الأخطاء في تطبيقات C++.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2024-10-16 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2024-10-16 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["\u003cbr /\u003e\n\nThis page shows you how to enable App Check in a C++ app, using the\ndefault providers: Play Integrity on Android, and Device Check or App Attest on\nApple platforms. When you enable App Check, you help ensure that\nonly your app can access your project's Firebase resources. See an\n[Overview](/docs/app-check) of this feature.\n\n1. Set up your Firebase project\n\n1. [Add Firebase to your C++ project](/docs/cpp/setup) if you haven't\n already done so.\n\n2. Register your apps to use App Check with the Play Integrity, Device Check,\n or App Attest providers in the\n [**Project Settings \\\u003e App Check**](https://console.firebase.google.com/project/_/appcheck)\n section of the Firebase console.\n\n You usually need to register all of your project's apps, because once you\n enable enforcement for a Firebase product, only registered apps will be able\n to access the product's backend resources.\n\n For detailed instructions on how to register with each provider, refer to\n the Android and iOS specific documentation.\n3. **Optional**: In the app registration settings, set a custom time-to-live\n (TTL) for App Check tokens issued by the provider. You can set the TTL\n to any value between 30 minutes and 7 days. When changing this value, be\n aware of the following tradeoffs:\n\n - Security: Shorter TTLs provide stronger security, because it reduces the window in which a leaked or intercepted token can be abused by an attacker.\n - Performance: Shorter TTLs mean your app will perform attestation more frequently. Because the app attestation process adds latency to network requests every time it's performed, a short TTL can impact the performance of your app.\n - Quota and cost: Shorter TTLs and frequent re-attestation deplete your quota faster, and for paid services, potentially cost more. See [Quotas \\& limits](/docs/app-check#quotas_limits).\n\n The default TTL\n is reasonable for most apps. Note that the App Check library refreshes\n tokens at approximately half the TTL duration.\n\n2. Add the App Check library to your app\n\nInclude the App Check library in your set of dependencies, following\n[the setup instructions](/docs/cpp/setup#add-sdks) for App Check.\n\n3. Initialize App Check\n\nAdd the following initialization code to your app so that it runs before you\nuse any Firebase services including any creation of Firebase Apps. \n\nAndroid\n\n1. Include the header file for `firebase::app_check`:\n\n ```c++\n #include \"firebase/app_check.h\"\n ```\n2. Initialize the App Check library with the Play Integrity provider:\n\n firebase::app_check::AppCheck::SetAppCheckProviderFactory(\n firebase::app_check::PlayIntegrityProviderFactory::GetInstance());\n\niOS+\n\n1. Include the header file for `firebase::app_check`:\n\n ```c++\n #include \"firebase/app_check.h\"\n ```\n2. Initialize the App Check library with the Device Check or App Attest\n provider:\n\n firebase::app_check::AppCheck::SetAppCheckProviderFactory(\n firebase::app_check::DeviceCheckProviderFactory::GetInstance());\n\nNext steps\n\nOnce the App Check library is installed in your app, start distributing the\nupdated app to your users.\n\nThe updated client app will begin sending App Check tokens along with every\nrequest it makes to Firebase, but Firebase products will not require the tokens\nto be valid until you enable enforcement in the App Check section of the\nFirebase console.\n\nMonitor metrics and enable enforcement\n\nBefore you enable enforcement, however, you should make sure that doing so won't\ndisrupt your existing legitimate users. On the other hand, if you're seeing\nsuspicious use of your app resources, you might want to enable enforcement\nsooner.\n\nTo help make this decision, you can look at App Check metrics for the\nservices you use:\n\n- [Monitor App Check request metrics](/docs/app-check/monitor-metrics) for Realtime Database, Cloud Firestore, and Cloud Storage.\n- [Monitor App Check request metrics for Cloud Functions](/docs/app-check/monitor-functions-metrics).\n\nEnable App Check enforcement\n\nWhen you understand how App Check will affect your users and you're ready to\nproceed, you can enable App Check enforcement:\n\n- [Enable App Check enforcement](/docs/app-check/enable-enforcement) for Realtime Database, Cloud Firestore, and Cloud Storage.\n- [Enable App Check enforcement for Cloud Functions](/docs/app-check/cloud-functions).\n\nUse App Check in debug environments\n\nIf, after you have registered your app for App Check, you want to run your\napp in an environment that App Check would normally not classify as valid,\nsuch as on desktop, an emulator during development, or from a continuous\nintegration (CI) environment, you can create a debug build of your app that\nuses the App Check debug provider instead of a real attestation provider.\n\nSee [Use App Check with the debug provider in C++ apps](/docs/app-check/cpp/debug-provider)."]]