توضح لك هذه الصفحة كيفية تفعيل App Check في تطبيق ويب، باستخدام مقدّم خدمة App Check عند تفعيل App Check، فإنك لضمان وصول تطبيقك فقط إلى موارد Firebase لمشروعك.
إذا أردت استخدام "App Check" مع أحد مقدّمي الخدمة المضمّنين، راجِع مستندات لـ App Check مع reCAPTCHA Enterprise
قبل البدء
أضِف Firebase إلى مشروع JavaScript إذا لم يسبق لك إجراء ذلك. قمت بذلك بالفعل.
1- إضافة مكتبة App Check إلى تطبيقك
أضِف Firebase إلى تطبيق الويب إذا لم يسبق لك إجراء ذلك. التأكد من لاستيراد مكتبة App Check.
2- إنشاء عنصر الموفّر "App Check"
أنشِئ كائن موفِّر "App Check" للموفِّر المخصّص. هذا الكائن
طريقة getToken()
التي تجمع كل المعلومات المخصصة
يطلب موفِّر خدمة App Check إثبات صحة البيانات، ويرسلها إلى
خدمة الحصول على رموز مميّزة مقابل رمز مميّز من "App Check" تشير رسالة الأشكال البيانية
تعالج حزمة تطوير البرامج (SDK) "App Check" التخزين المؤقت للرموز المميّزة، لذا ننصحك دائمًا بالحصول على رمز مميّز جديد في
تنفيذ getToken()
.
Web
import { CustomProvider } from "firebase/app-check"; const appCheckCustomProvider = new CustomProvider({ getToken: () => { return new Promise((resolve, _reject) => { // TODO: Logic to exchange proof of authenticity for an App Check token and // expiration time. // ... const appCheckToken = { token: tokenFromServer, expireTimeMillis: expirationFromServer * 1000 }; resolve(appCheckToken); }); } });
Web
const appCheckCustomProvider = { getToken: () => { return new Promise((resolve, _reject) => { // TODO: Logic to exchange proof of authenticity for an App Check token and // expiration time. // ... const appCheckToken = { token: tokenFromServer, expireTimeMillis: expirationFromServer * 1000 }; resolve(appCheckToken); }); } };
3- إعداد App Check
أضف رمز الإعداد التالي إلى التطبيق قبل الدخول إلى أي خدمات Firebase:
Web
import { initializeApp } from "firebase/app"; import { initializeAppCheck } from "firebase/app-check"; const app = initializeApp({ // Your firebase configuration object }); const appCheck = initializeAppCheck(app, { provider: appCheckCustomProvider, // 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(); appCheck.activate( appCheckCustomProvider, // 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 (إصدار تجريبي).
- مراقبة مقاييس طلب App Check في Cloud Functions.
تفعيل فرض App Check
عندما تفهم تأثير App Check في المستخدمين وتكون مستعدًا لذلك المتابعة، يمكنك تفعيل تنفيذ سياسة App Check:
- تفعيل فرض App Check في Realtime Database وCloud Firestore وCloud Storage وAuthentication (إصدار تجريبي).
- تفعيل فرض App Check في Cloud Functions.
استخدام App Check في بيئات تصحيح الأخطاء
بعد تسجيل تطبيقك لـ App Check، إذا أردت تشغيل في بيئة لا يصنفها App Check عادةً على أنها صالحة، مثلاً محليًا أثناء عملية التطوير أو من خلال التكامل المستمر (CI) يمكنك إنشاء إصدار لتصحيح أخطاء تطبيقك يستخدم موفِّر خدمة تصحيح الأخطاء App Check بدلاً من موفر مصادقة حقيقي.
راجِع استخدام App Check مع موفِّر تصحيح الأخطاء في تطبيقات الويب.