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