استخدام ميزة "فحص التطبيقات" لتأمين مفتاح واجهة برمجة التطبيقات
توفر ميزة "فحص التطبيقات" من Firebase الحماية للمكالمات من تطبيقك إلى "منصة خرائط Google" من خلال حظر الزيارات الواردة من مصادر أخرى غير التطبيقات المشروعة. ويتم ذلك من خلال التحقّق من رمز مميّز من أحد موفّري شهادات إثبات الهوية، مثل reCAPTCHA Enterprise. يساعد دمج تطبيقاتك مع ميزة "فحص التطبيقات" في الحماية من الطلبات الضارة، وبالتالي لن يتم تحصيل رسوم منك مقابل مكالمات واجهة برمجة التطبيقات غير المصرّح بها.
هل ميزة "فحص التطبيقات" مناسبة لي؟
ننصح باستخدام ميزة "فحص التطبيقات" في معظم الحالات، ولكنّها ليست ضرورية أو غير متاحة في الحالات التالية:
- التطبيقات الخاصة أو التجريبية: إذا لم يكن تطبيقك متاحًا للجميع، لن تحتاج إلى ميزة "فحص التطبيقات".
- إذا كان تطبيقك يُستخدَم فقط من خادم إلى خادم، لن تحتاج إلى ميزة "فحص التطبيقات". ومع ذلك، إذا كان الخادم الذي يتواصل مع "منصة خرائط Google" يُستخدَم من قِبل عملاء متاحين للجميع (مثل تطبيقات الأجهزة الجوّالة)، ننصحك بـ استخدام ميزة "فحص التطبيقات" لحماية هذا الخادم بدلاً من "منصة خرائط Google".
نظرة عامة على خطوات التنفيذ
في ما يلي الخطوات التي يجب اتّباعها لدمج تطبيقك مع ميزة "فحص التطبيقات":
- إضافة Firebase إلى تطبيقك
- إضافة مكتبة "فحص التطبيقات" وتهيئتها
- إضافة موفّر الرموز المميّزة إلى تطبيقك
- تهيئ واجهات برمجة التطبيقات Maps JavaScript API و"فحص التطبيقات"
- تفعيل تصحيح الأخطاء
- مراقبة طلبات تطبيقك وتحديد إجراءات التنفيذ
بعد الدمج مع ميزة "فحص التطبيقات"، ستتمكّن من الاطّلاع على مقاييس الزيارات من الخلفية على وحدة تحكّم Firebase. توفّر هذه المقاييس تفصيلاً للطلبات حسب ما إذا كانت مصحوبة برمز مميّز صالح لميزة "فحص التطبيقات". لمزيد من المعلومات، يُرجى الاطّلاع على مستندات ميزة "فحص التطبيقات" من Firebase.
عند التأكّد من أنّ معظم الطلبات واردة من مصادر مشروعة وأنّ المستخدمين قد حدّثوا إلى أحدث إصدار من تطبيقك يتضمّن عملية تنفيذ ميزة "فحص التطبيقات"، يمكنك تفعيل إجراءات التنفيذ. بعد تفعيل إجراءات التنفيذ، سترفض ميزة "فحص التطبيقات" جميع الزيارات التي لا تتضمّن رمزًا مميّزًا صالحًا لميزة "فحص التطبيقات".
اعتبارات يجب مراعاتها عند التخطيط لعملية دمج ميزة "فحص التطبيقات"
في ما يلي بعض النقاط التي يجب مراعاتها عند التخطيط لعملية الدمج:
- يفرض أحد موفّري شهادات إثبات الهوية الذين ننصح بهم، reCAPTCHA Enterprise، رسومًا مقابل أكثر من 10,000 تقييم شهريًا.
أمّا موفّر شهادات إثبات الهوية الآخر الذي ننصح به، وهو الإصدار الثالث من خدمة reCAPTCHA، فيتضمّن حصة، وبعدها لن يتم تقييم الزيارات.
يمكنك اختيار استخدام موفّر شهادات إثبات هوية مخصّص، ولكنّ هذا الخيار يُعدّ حالة استخدام متقدّمة. لمزيد من المعلومات، يُرجى الاطّلاع على مستندات ميزة "فحص التطبيقات".
-
سيواجه مستخدمو تطبيقك بعض التأخير عند بدء التشغيل. ومع ذلك، بعد ذلك، ستحدث أي عملية إعادة لإثبات الهوية بشكل دوري في الخلفية ولن يواجه المستخدمون أي تأخير بعد ذلك. يعتمد مقدار التأخير الدقيق عند بدء التشغيل على موفّر شهادات إثبات الهوية الذي تختاره.
تحدّد المدة التي يكون فيها الرمز المميّز لميزة "فحص التطبيقات" صالحًا (أو مدة البقاء) عدد مرات إعادة إثبات الهوية. يمكن ضبط هذه المدة في وحدة تحكّم Firebase. تحدث عملية إعادة إثبات الهوية عند انقضاء نصف مدة البقاء تقريبًا. لمزيد من المعلومات، يُرجى الاطّلاع على مستندات Firebase الخاصة بموفّر شهادات إثبات الهوية.
دمج تطبيقك مع ميزة "فحص التطبيقات"
المتطلّبات الأساسية
- تطبيق تم تحميل أحدث إصدار أسبوعي أو ربع سنوي من Maps JavaScript API ومكتبات Core عليه
- مشروع على السحابة الإلكترونية تم تفعيل Maps JavaScript API فيه
- يجب أن تكون مالك التطبيق في Cloud Console.
- ستحتاج إلى رقم تعريف مشروع التطبيق من Cloud Console.
الخطوة 1: إضافة Firebase إلى تطبيقك
اتّبِع التعليمات الواردة في مستندات المطوّرين في Firebase لإضافة Firebase إلى تطبيقك.
الخطوة 2: إضافة مكتبة "فحص التطبيقات" وتهيئتها
توفّر Firebase تعليمات لكل موفّر شهادات إثبات هوية تلقائي. توضّح لك هذه التعليمات كيفية إعداد مشروع Firebase وإضافة مكتبة "فحص التطبيقات" إلى تطبيقك. اتّبِع عينات التعليمات البرمجية المقدَّمة لتهيئة ميزة "فحص التطبيقات".
الخطوة 3: تحميل مكتبات Maps JavaScript API
حمِّل مكتبتَي Core وMaps كما هو موضّح في المقتطف التالي. لمزيد من المعلومات والتعليمات، يُرجى الاطّلاع على مستندات Maps JavaScript API.
async function init() { const {Settings} = await google.maps.importLibrary('core'); const {Map} = await google.maps.importLibrary('maps'); }
الخطوة 4: تهيئة واجهات برمجة التطبيقات Maps API و"فحص التطبيقات"
- هيِّئ ميزة "فحص التطبيقات" باستخدام الإعداد الذي توفّره وحدة تحكّم Firebase.
- تأكَّد من أنّ الطلبات إلى Maps JavaScript API مصحوبة برموز مميّزة لميزة "فحص التطبيقات":
import {initializeApp} from 'firebase/app'; import { getToken, initializeAppCheck, ReCaptchaEnterpriseProvider, } from 'firebase/app-check'; async function init() { const {Settings} = await google.maps.importLibrary('core'); const {Map} = await google.maps.importLibrary('maps'); const app = initializeApp({ // Your firebase configuration object }); // Pass your reCAPTCHA Enterprise site key to initializeAppCheck(). const appCheck = initializeAppCheck(app, { provider: new ReCaptchaEnterpriseProvider( 'abcdefghijklmnopqrstuvwxy-1234567890abcd', ), // Optional argument. If true, the SDK automatically refreshes App Check // tokens as needed. isTokenAutoRefreshEnabled: true, }); Settings.getInstance().fetchAppCheckToken = () => getToken(appCheck, /* forceRefresh = */ false); // Load a map map = new Map(document.getElementById("map"), { center: { lat: 37.4161493, lng: -122.0812166 }, zoom: 8, }); }
الخطوة 5: تفعيل تصحيح الأخطاء (اختياري)
إذا أردت تطوير تطبيقك واختباره محليًا أو تشغيله في بيئة تكامل مستمر (CI)، يمكنك إنشاء إصدار مخصص لتصحيح الأخطاء من تطبيقك يستخدم سرًا لتصحيح الأخطاء من أجل الحصول على رموز مميّزة صالحة لميزة "فحص التطبيقات". يسمح لك ذلك بتجنُّب استخدام موفّري شهادات إثبات الهوية الحقيقيين في إصدار مخصص لتصحيح الأخطاء.
لاختبار تطبيقك محليًا:
- فعِّل موفّر تصحيح الأخطاء لأغراض التطوير.
- ستتلقّى معرّفًا فريدًا عالميًا عشوائيًا تم إنشاؤه تلقائيًا (يُعرف باسم _رمز تصحيح الأخطاء_ في مستندات ميزة "فحص التطبيقات") من سجلّات تصحيح الأخطاء في حزمة تطوير البرامج (SDK). أضِف هذا الرمز المميّز إلى وحدة تحكّم Firebase.
- لمزيد من المعلومات والتعليمات، يُرجى الاطّلاع على مستندات ميزة "فحص التطبيقات".
لتشغيل تطبيقك في بيئة تكامل مستمر:
- أنشئ معرّفًا فريدًا عالميًا عشوائيًا من وحدة تحكّم Firebase.
- أضِف المعرّف الفريد العالمي كرمز مميّز لتصحيح الأخطاء، ثم انسخه إلى مخزن سري ستتمكّن اختبارات التكامل المستمر من الوصول إليه لكل عملية اختبار.
- لمزيد من المعلومات والتعليمات، يُرجى الاطّلاع على مستندات ميزة "فحص التطبيقات".
الخطوة 6: مراقبة طلبات تطبيقك وتحديد إجراءات التنفيذ
قبل البدء في إجراءات التنفيذ، عليك التأكّد من أنّك لن تتسبّب في مقاطعة المستخدمين الشرعيين لتطبيقك. للقيام بذلك، انتقِل إلى شاشة مقاييس ميزة "فحص التطبيقات" للاطّلاع على النسبة المئوية للزيارات التي تم التحقّق منها أو التي انتهت صلاحيتها أو غير المشروعة في تطبيقك. بعد التأكّد من أنّ معظم الزيارات تم التحقّق منها، يمكنك تفعيل إجراءات التنفيذ.
لمزيد من المعلومات والتعليمات، يُرجى الاطّلاع على مستندات ميزة "فحص التطبيقات" من Firebase.