بدء استخدام ميزة "التحقّق من التطبيقات" مع الإصدار الثالث من خدمة reCAPTCHA في تطبيقات الويب

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

تتوافق

يُرجى العِلم أنّ الإصدار الثالث من reCAPTCHA غير مرئي للمستخدمين. لن يطلب موفّر الإصدار الثالث من خدمة reCAPTCHA من المستخدمين حلّ أي تحدٍ في أي وقت. اطّلِع على مستندات الإصدار الثالث من خدمة reCAPTCHA.

إذا كنت تريد استخدام App Check مع موفّر مخصّص، يمكنك الاطّلاع على تنفيذ موفّر App Check مخصّص.

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

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

  2. سجِّل موقعك الإلكتروني في الإصدار الثالث من خدمة reCAPTCHA واحصل على مفتاح الموقع الإلكتروني والمفتاح السري للإصدار الثالث من خدمة reCAPTCHA.

  3. في وحدة تحكّم Firebase، انتقِل إلى الأمان > فحص التطبيقات.

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

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

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

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

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

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

عندما يزور مستخدم تطبيق الويب الخاص بك، يقيّم الإصدار الثالث من خدمة reCAPTCHA مستوى المخاطر التي يشكّلها تفاعل المستخدم، ويعرض نتيجة تتراوح بين 0.0 و1.0؛ حيث تشير النتيجة 1.0 إلى أنّ التفاعل على الأرجح جيد، وتشير النتيجة 0.0 إلى أنّ التفاعل على الأرجح صادر عن روبوت. تتيح لك App Check ضبط حد لمخاطر التطبيقات حتى تتمكّن من تعديل مستوى تحمّلك لهذه المخاطر.

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

التفاصيل

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

  • لمراقبة توزيع نتائج الإصدار الثالث من خدمة reCAPTCHA لتطبيق الويب، انتقِل إلى وحدة تحكّم المشرف في reCAPTCHA واختَر الموقع الإلكتروني الذي يتوافق مع تطبيق الويب.
  • إذا كان مستوى تحمّلك لمخاطر التطبيقات منخفضًا، حرِّك شريط التمرير إلى اليمين لزيادة الحد الأدنى لمستوى خطورة التطبيقات.

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

    • لا يُنصح باستخدام القيمة 0.0، لأنّ هذا الإعداد يؤدي إلى إيقاف ميزة الحماية من إساءة الاستخدام.

يمكنك الرجوع إلى مستندات الإصدار الثالث من خدمة reCAPTCHA للحصول على تفاصيل إضافية.

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

أضِف Firebase إلى تطبيق الويب إذا لم يسبق لك إجراء ذلك. احرص على استيراد مكتبة App Check.

3- إعداد App Check

أضِف رمز الإعداد التالي إلى تطبيقك قبل الوصول إلى أي من خدمات Firebase. عليك إدخال مفتاح الموقع الإلكتروني الخاص بخدمة reCAPTCHA الذي أنشأته في وحدة تحكّم reCAPTCHA إلى activate().

Web

import { initializeApp } from "firebase/app";
import { initializeAppCheck, ReCaptchaV3Provider } from "firebase/app-check";

const app = initializeApp({
  // Your firebase configuration object
});

// Pass your reCAPTCHA v3 site key (public key) to activate(). Make sure this
// key is the counterpart to the secret key you set in the Firebase console.
const appCheck = initializeAppCheck(app, {
  provider: new ReCaptchaV3Provider('abcdefghijklmnopqrstuvwxy-1234567890abcd'),

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  isTokenAutoRefreshEnabled: true
});

Web

firebase.initializeApp({
  // Your firebase configuration object
});

const appCheck = firebase.appCheck();
// Pass your reCAPTCHA v3 site key (public key) to activate(). Make sure this
// key is the counterpart to the secret key you set in the Firebase console.
appCheck.activate(
  'abcdefghijklmnopqrstuvwxy-1234567890abcd',

  // Optional argument. If true, the SDK automatically refreshes App Check
  // tokens as needed.
  true);

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

بعد تثبيت مكتبة 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 مع موفّر تصحيح الأخطاء في تطبيقات الويب.