توضّح لك هذه الصفحة كيفية تفعيل App Check في تطبيق ويب باستخدام موفِّر الإصدار الثالث من reCAPTCHA المضمّن. عند تفعيل App Check، يمكنك التأكّد من أنّه تطبيقك فقط يمكنه الوصول إلى موارد Firebase في مشروعك. اطّلِع على نظرة عامة حول هذه الميزة.
تتيح لكيُرجى العِلم أنّ الإصدار 3 من reCAPTCHA غير مرئي للمستخدمين. لن يطلب مقدّم الإصدار 3 من خدمة reCAPTCHA من المستخدمين حلّ أي تحدّ في أي وقت. اطّلِع على مستندات الإصدار 3 من reCAPTCHA.
إذا كنت تريد استخدام App Check مع موفِّر مخصّص، اطّلِع على مقالة تنفيذ موفِّر App Check مخصّص.
1. إعداد مشروعك على Firebase
أضِف Firebase إلى مشروع JavaScript إذا لم يسبق لك إجراء ذلك.
سجِّل موقعك الإلكتروني لاستخدام الإصدار 3 من reCAPTCHA واحصل على مفتاح الموقع الإلكتروني ومفتاحه السري للإصدار 3 من reCAPTCHA.
سجِّل تطبيقاتك لاستخدام App Check مع مزوّد reCAPTCHA في قسم App Check ضمن وحدة تحكّمFirebase. عليك تقديم المفتاح السري الذي حصلت عليه في الخطوة السابقة.
عليك عادةً تسجيل جميع تطبيقات مشروعك، لأنّه بعد فعالة ميزة فرض الامتثال لمنتج Firebase، لن تتمكّن سوى التطبيقات المسجّلة من الوصول إلى موارد الخلفية للتطبيق.
اختياري: في إعدادات تسجيل التطبيق، اضبط مدة بقاء مخصّصة (TTL) لبيانات اعتماد App Check التي يصدرها مقدّم الخدمة. يمكنك ضبط وقت الاستبدال على أي قيمة تتراوح بين 30 دقيقة و7 أيام. عند تغيير هذه القيمة، يجب مراعاة المفاضلات التالية:
- الأمان: توفّر فترات صلاحية قصيرة للذاكرة المؤقتة أمانًا أكبر، لأنّها تقلّل من المهلة التي يمكن فيها لمهاجمٍ إساءة استخدام رمز مميّز تم تسريبه أو اعتراضه.
- الأداء: تعني مدد البقاء القصيرة أنّ تطبيقك سيُجري عملية إثبات الهوية بشكلٍ أكثر تكرارًا. بما أنّ عملية إثبات ملكية التطبيق تضيف وقت استجابة إلى طلبات الشبكة في كل مرة يتم فيها تنفيذها، يمكن أن تؤثّر مدة بقاء قصيرة في أداء تطبيقك.
- الحصة والتكلفة: إنّ قيم مهلة الجلسة الأقصر وعمليات إعادة الشهادة المتكرّرة تؤديان إلى استنفاد الحصة بشكل أسرع، وقد تؤدي إلى زيادة التكلفة في الخدمات المدفوعة. راجِع الحصص والحدود.
إنّ الوقت التلقائي لصلاحية البيانات والذي يبلغ يوم واحد هو مناسب لمعظم التطبيقات. يُرجى العلم أنّ مكتبة App Check تُعيد تحميل الرموز المميّزة بعد مرور نصف مدة مدة بقاء المعلومات (TTL) تقريبًا.
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 لأجل Data Connect وVertex AI in Firebase وRealtime Database وCloud Firestore وCloud Storage وAuthentication وGoogle Identity for iOS وMaps JavaScript API وPlaces API (الإصدار الجديد)
- تتبُّع مقاييس طلبات App Check في Cloud Functions
تفعيل إجراءات تنفيذ App Check
بعد فهم مدى تأثير App Check في المستخدمين واستعدادك للمتابعة، يمكنك تفعيل فرض App Check:
- تفعيل فرض App Check لأجل Data Connect وVertex AI in Firebase وRealtime Database وCloud Firestore وCloud Storage وAuthentication وGoogle Identity for iOS وMaps JavaScript API وPlaces API (الإصدار الجديد)
- فعِّل ميزة فرض App Check على Cloud Functions.
استخدام App Check في بيئات تصحيح الأخطاء
بعد تسجيل تطبيقك في App Check، إذا أردت تشغيله في بيئة لا تصنّفها App Check عادةً على أنّها صالحة، مثل التشغيل على الجهاز أثناء التطوير أو من بيئة التكامل المستمر (CI)، يمكنك إنشاء إصدار تصحيح أخطاء من تطبيقك يستخدم مقدّم تصحيح أخطاءApp Check بدلاً من مقدّم إثبات الهوية الحقيقي.
راجِع مقالة استخدام App Check مع مقدّم تصحيح الأخطاء في تطبيقات الويب.