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

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

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

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

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

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

  2. افتح reCAPTCHA Enterprise. في Cloud Console وتنفيذ ما يلي:

    1. إذا طُلِب منك تفعيل reCAPTCHA Enterprise API، يُرجى تنفيذ هذا الإجراء.
    2. أنشئ مفتاحًا من نوع الموقع الإلكتروني. عليك تحديد النطاقات التي لك استضافة تطبيق الويب. ترك "استخدام تحدي مربّع الاختيار" الخيار إلغاء اختيار.
  3. سجِّل تطبيقاتك لاستخدام App Check مع reCAPTCHA Enterprise في القسم App Check من وحدة تحكّم Firebase عليك تقديم مفتاح الموقع الإلكتروني الذي حصلت عليه في الخطوة السابقة.

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

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

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

    وتمثل مدة البقاء الافتراضية ساعة واحدة معقول بالنسبة لمعظم التطبيقات. يُرجى العلم أنّه تتم إعادة تحميل مكتبة "App Check". في نصف مدة TTL تقريبًا.

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

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

3- إعداد App Check

أضف رمز الإعداد التالي إلى التطبيق قبل الدخول إلى أي خدمات Firebase. عليك اجتياز مفتاح موقع reCAPTCHA Enterprise الإلكتروني. الذي أنشأته في Cloud Console، إلى activate().

Web

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

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

// Create a ReCaptchaEnterpriseProvider instance using your reCAPTCHA Enterprise
// site key and pass it to initializeAppCheck().
const appCheck = initializeAppCheck(app, {
  provider: new ReCaptchaEnterpriseProvider(/* reCAPTCHA Enterprise site key */),
  isTokenAutoRefreshEnabled: true // Set to true to allow auto-refresh.
});

Web

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

// Create a ReCaptchaEnterpriseProvider instance using your reCAPTCHA Enterprise
// site key and pass it to activate().
const appCheck = firebase.appCheck();
appCheck.activate(
  new firebase.appCheck.ReCaptchaEnterpriseProvider(
    /* reCAPTCHA Enterprise site key */
  ),
  true // Set to true to allow auto-refresh.
);

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

بعد تثبيت مكتبة App Check في تطبيقك، يمكنك نشرها.

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

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

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

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

تفعيل فرض App Check

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

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

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

راجِع استخدام App Check مع موفِّر تصحيح الأخطاء في تطبيقات الويب.

ملاحظة عن التكلفة

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

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