بدء استخدام فحص التطبيقات مع reCAPTCHA Enterprise على منصات Apple

اختيار النظام الأساسي: iOS+ Android Web Flutter


تعرض هذه الصفحة كيفية إعداد App Check في تطبيق على منصات Apple، باستخدام موفّر reCAPTCHA Enterprise. App Check تساعد في ضمان إمكانية وصول تطبيقك فقط إلى موارد الخلفية في مشروعك. لمزيد من المعلومات، راجِع نظرتنا العامة حول App Check.

App Check تتطلّب استخدام مفاتيح المستندة إلى النتائج reCAPTCHA، ما يجعلها غير مرئية للمستخدمين. ويعني ذلك أنّ موفّر reCAPTCHA Enterprise لن يطلب من المستخدمين حلّ تحدٍّ في أي وقت.

إذا كانت حالة الاستخدام تتطلّب ميزات reCAPTCHA Enterprise غير المضمّنة في App Check، أو إذا كنت تريد استخدام App Check مع موفّر مخصّص ، راجِع مقالة تنفيذ موفّر مخصّص لـ App Check.

1. إعداد مشروع Firebase

  1. إذا لم يسبق لك ذلك، أضِف Firebase إلى مشروعك على Apple.

  2. في Google Cloud console، انتقِل إلى صفحة Fraud Defense، ونفِّذ ما يلي لموفّر reCAPTCHA Enterprise:

    1. تأكَّد من أنّك في المشروع الصحيح (راجِع أداة اختيار المشاريع في أعلى الشاشة).

    2. إذا طُلب منك ذلك، فعِّل reCAPTCHA Enterprise API.

    3. أنشئ مفتاحًا من نوع iOS، وحدِّد رقم تعريف حزمة تطبيقك (مثلاً، com.example.my_app).

      • تأكَّد من إدخال معرِّف الحزمة نفسه الذي قدّمته عند إنشاء تطبيق Firebase Apple في مشروع Firebase. قيمة رقم تعريف الحزمة حسّاسة لحالة الأحرف.

      • بالنسبة إلى App Check، يمكن أن يتطابق كل رقم تعريف حزمة مع مفتاح واحد reCAPTCHA فقط.

      للحصول على تعليمات مفصّلة، راجِع مقالة إنشاء مفاتيح reCAPTCHA المستندة إلى النتائج.

    4. دوِّن هذا المفتاح. ستحتاج إلى إضافته إلى مسار التسجيل في Firebase Console.

  3. في Firebase Console، انتقِل إلى الأمان > فحص التطبيقات.

  4. في علامة التبويب التطبيقات ، سجِّل تطبيقاتك على منصات Apple لاستخدام App Check مع الموفّر reCAPTCHA Enterprise. عليك تقديم المفتاح الذي حصلت عليه في الـ Google Cloud console.

  5. اختياري: اضبط مدة بقاء الرمز المميز.

    في إعدادات تسجيل التطبيق، اضبط مدة بقاء مخصّصة App Check للرموز المميّزة لميزة "التحقّق من التطبيق" التي يصدرها الموفّر. يمكنك ضبط مدة البقاء على أي قيمة تتراوح بين 30 دقيقة و7 أيام. عند تغيير هذه القيمة، يُرجى العِلم بالمقايضات التالية:

    • الأمان: توفّر مدة البقاء الأقصر أمانًا أقوى، لأنّها تقلّل من الفترة التي يمكن للمهاجم فيها إساءة استخدام رمز مميّز تم تسريبه أو اعتراضه.
    • الأداء: تعني مدة البقاء الأقصر أنّ تطبيقك سيُجري عملية التحقّق من الشهادة بشكلٍ أكثر تكرارًا. بما أنّ عملية التحقّق من شهادة التطبيق تضيف وقت استجابة لطلبات الشبكة في كل مرة يتم فيها تنفيذها، يمكن أن تؤثّر مدة البقاء القصيرة في أداء تطبيقك.
    • الحصة والتكلفة: تؤدي مدة البقاء الأقصر وعمليات إعادة التحقّق من الشهادة المتكرّرة إلى استنفاد حصتك بشكلٍ أسرع، وقد تزيد التكلفة للخدمات المدفوعة. راجِع الحصص والحدود.

    تُعدّ مدة البقاء التلقائية البالغة ساعة واحدة مناسبة لمعظم التطبيقات. يُرجى العِلم أنّ مكتبة App Check تُجدّد الرموز المميّزة في نصف مدة البقاء تقريبًا.

  6. اختياري: اضبط الإعدادات المتقدّمة.

  7. انقر على حفظ.

(اختياري) ضبط الإعدادات المتقدّمة

عندما يفتح المستخدم تطبيقك، reCAPTCHA Enterprise يقيّم مستوى المخاطر التي يشكّلها تفاعل المستخدم ضمن المفتاح، ويعرض نتيجة تتراوح بين 0.0 و1.0، بزيادات قدرها 0.1.

  • تشير النتيجة 0.0 إلى أنّ التفاعل يشكّل خطرًا كبيرًا وقد يكون احتياليًا.
  • تشير النتيجة 1.0 إلى أنّ التفاعل يشكّل خطرًا منخفضًا ومن المرجّح جدًا أن يكون مشروعًا.

App Check تتيح لك ضبط معيار تحديد مخاطر التطبيق لتعديل مستوى تحمّلك لهذا الخطر.

بالنسبة إلى معظم حالات الاستخدام، ننصح باستخدام قيمة المعيار التلقائية 0.5. إذا كانت حالة الاستخدام تتطلّب إجراء تعديل، يمكنك ضبط هذه القيمة لكل تطبيق من تطبيقاتك في Firebase Console (انتقِل إلى الأمان > فحص التطبيقات). احرص على توسيع بعض الاعتبارات المهمة حول ضبط معيار تحديد مخاطر التطبيق ومراجعتها أدناه.

2. إضافة حزمة App Check SDK إلى تطبيقك

استخدِم Swift Package Manager (SPM) لتثبيت تبعيات Firebase وإدارتها. إذا كنت تستخدم Firebase حاليًا، تأكَّد من أنّ حزمة Firebase هي الإصدار 12.17.0 أو إصدار أحدث.

  1. في Xcode، افتح مشروع تطبيقك.

  2. أضِف مكتبة Firebase:

    1. انتقِل إلى ملف > إضافة حِزم.

    2. عندما يُطلب منك ذلك، أضِف مستودع Firebase Apple Platforms SDK:

      https://github.com/firebase/firebase-ios-sdk
      
    3. اختَر أحدث إصدار من حزمة SDK (الإصدار 12.17.0 أو إصدار أحدث).

    4. اختَر مكتبة FirebaseAppCheck.

    5. انقر على إضافة حزمة. سيحلّ Xcode التبعيات وينزّلها.

    6. عندما يُطلب منك ذلك، أضِف المكتبة إلى هدف تطبيقك.

  3. أضِف مكتبة reCAPTCHA Enterprise:

    1. ارجِع إلى ملف > إضافة حِزم

    2. عندما يُطلب منك ذلك، أضِف مستودع reCAPTCHA Enterprise SDK:

      https://github.com/GoogleCloudPlatform/recaptcha-enterprise-mobile-sdk
      
    3. اختَر مكتبة RecaptchaEnterprise.

    4. انقر على إضافة حزمة. عندما يُطلب منك ذلك، أضِف المكتبة إلى هدف تطبيقك.

3. إعداد App Check

في تطبيقك، عليك إعداد ميزة App Check قبل استخدام أي خدمات أخرى من Firebase.

أنشئ مثيلاً من RecaptchaProviderFactory، وأدخِل مفتاح reCAPTCHA، ثم اضبط App Check لاستخدامه:

let providerFactory = RecaptchaProviderFactory(siteKey: "SITE_KEY")
AppCheck.setAppCheckProviderFactory(providerFactory)

FirebaseApp.configure()

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

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

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

مراقبة المقاييس

_**قبل تفعيل التنفيذ**_، تأكَّد من أنّ ذلك لن يؤدي إلى إيقاف المستخدمين الشرعيين الحاليين. ومع ذلك، إذا كنت تلاحظ استخدامًا مشبوهًا لموارد تطبيقك، قد تحتاج إلى تفعيل التنفيذ في وقت أقرب.

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

تفعيل فرض ميزة App Check

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

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

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

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

لمزيد من التفاصيل، راجِع مقالة استخدام App Check مع مقدّم خدمة تصحيح الأخطاء على منصات Apple.

الأسعار

App Check تُنشئ تقييمًا نيابةً عنك للتحقّق من الرمز المميّز لردّ المستخدم في كل مرة يُجدّد فيها تطبيقك الرمز المميّز لـ App Check. سيتم تحصيل رسوم من مشروع Firebase الخاص بك مقابل كل تقييم يتم إنشاؤه فوق الحصة المجانية. لمعرفة التفاصيل، راجِع reCAPTCHA الأسعار.

تلقائيًا، سيُجدّد تطبيقك هذا الرمز المميّز مرّتين كل ساعة واحدة. للتحكّم في معدّل تجديد تطبيقك للرموز المميّزة App Check (وبالتالي معدّل إنشاء التقييمات الجديدة)، يمكنك ضبط مدة بقاء الرمز المميّز.