قائمة التحقّق من الأمان لاستخدام Firebase AI Logic

عند الاتصال بـ Gemini API مباشرةً من تطبيقاتك على الأجهزة الجوّالة والويب، تتطلّب حماية البنية الأساسية الخلفية والحصة والطلبات الخاصة اتباع نهج دفاعي متعدد الطبقات. راجِع قائمة التحقّق هذه لتنفيذ أفضل ممارسات الأمان المقترَحة في Firebase AI Logic.

التحقّق من التطبيق والجهاز والمستخدم

التحقّق من أنّ الطلبات الواردة صادرة من نسخ شرعية وغير معدَّلة من تطبيقك يتم تشغيلها على أجهزة أصلية، بالإضافة إلى مستخدمين حقيقيين

فرض Firebase App Check

فرض استخدام Firebase App Check للمساعدة في حماية Gemini API من إساءة الاستخدام عند استدعائه مباشرةً من تطبيقك، وعند فرض استخدام App Check، يتم التحقّق من أنّ الطلبات الواردة صادرة من تطبيقك الأصلي و/أو جهاز لم يتم التلاعب به.

يتوافق App Check مع موفّري شهادات الإثبات على منصات Apple (‏DeviceCheck أو App Attest أو reCAPTCHA Enterprise) وAndroid (‏Play Integrity أو reCAPTCHA Enterprise) والويب (reCAPTCHA Enterprise)، كما يتوافق مع جميع هؤلاء الموفّرين لتطبيقات Flutter وUnity أيضًا.

اعتبارًا من أوائل يوليو 2026، ستفرض Firebase تلقائيًا استخدام App Check في Firebase AI Logic أثناء عملية الإعداد الموجّه في وحدة تحكّم Firebase. إذا سبق لك إعداد Firebase AI Logic، احرص على فرض App Check بشكل صريح. للتطوير على الجهاز، يمكنك إعداد App Check مقدّم خدمة تصحيح الأخطاء، ثم تسجيل تطبيقك لدى موفّر خدمة إثبات صحة الإصدار العلني قبل طرحه للمستخدمين النهائيين.

تفعيل ميزة "الحماية من إعادة التشغيل" باستخدام الرموز المميزة محدودة الاستخدام

كجزء من عملية إعداد App Check، ننصحك بفرض حماية من إعادة الإرسال لكي تكون رموز App Check صالحة للاستخدام لمرة واحدة فقط. يوفّر هذا الخيار حماية محسّنة تتجاوز الحماية الأساسية، ويتيح لك ضبط مستوى الحماية المناسب لتطبيقك وحالات الاستخدام.

إعداد قيود على مفاتيح واجهة برمجة التطبيقات في Firebase

تحدّد مفاتيح واجهة برمجة التطبيقات في Firebase مشروع Firebase وتطبيقك عند تقديم الطلبات. لمنع الاستخدام غير المصرّح به لمفاتيح واجهة برمجة التطبيقات، اتّبِع الخطوات التالية:

  • اضبط "قيود التطبيق" في وحدة تحكّم Google Cloud لحصر استخدام المفتاح على الطلبات الواردة من المعرّف المحدّد لحزمة تطبيقك (Apple) أو اسم الحزمة وبصمة SHA-1 (Android) أو مرجع HTTP (الويب) فقط.

  • راجِع القائمة المسموح بها الخاصة "بقيود واجهة برمجة التطبيقات" لكل مفتاح:

    • تأكَّد من أنّ Firebase AI Logic واجهة برمجة التطبيقات (firebasevertexai.googleapis.com) مدرَجة في القائمة المسموح بها.
    • تأكَّد من أنّ واجهات برمجة التطبيقات الأخرى الوحيدة المدرَجة في القائمة المسموح بها هي خدمات Firebase المحدّدة التي يتطلّبها تطبيقك. يمكنك الاطّلاع على قائمة واجهات برمجة التطبيقات المطلوبة لمفاتيح Firebase المحظورة.

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

حصر الطلبات على المستخدمين الذين تم إثبات ملكيتهم فقط

ننصحك بفرض وضع المستخدمين الذين تم التحقّق من هويتهم لكي تتضمّن جميع الطلبات عبر Firebase AI Logic بيانات اعتماد صالحة من Firebase Authentication. إذا كان الطلب واردًا من مستخدم نهائي لم تتم مصادقته، سيتم رفض الطلب مع ظهور الخطأ 401: unauthenticated.

حماية الطلبات وتعزيزها

منع تفكيك الرمز البرمجي للعميل من الكشف عن تصاميم الطلبات، وتأمين الخلفية حتى لا يتمكّن المستخدمون الضارون من تنفيذ طلبات عشوائية

استخدام نماذج الطلبات من جهة الخادم

استخدِم نماذج طلبات الخادم للحفاظ على أمان الطلبات وتعليمات النظام وإعدادات النماذج في السحابة الإلكترونية، بدلاً من ترميزها بشكل ثابت في رمز تطبيق العميل حيث يمكن استخراجها باستخدام تفكيك الرمز الثنائي.

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

التحقّق من صحة متغيّرات النموذج التي يقدّمها العميل وتنظيفها

تحمي نماذج الطلبات على الخادم تصميم الطلب، ولكن النماذج التي تقبل متغيّرات ديناميكية قد تظل عرضة لتقنية "حقن الطلبات". بما أنّ النماذج تجمع بين متغيرات إدخال المستخدم في الطلب النهائي، احرص على تنفيذ ما يلي:

  • يجب التحقّق من صحة جميع بيانات أدخلها المستخدم وتنظيفها على العميل قبل تمرير المتغيرات إلى نموذج (مثل فرض عدد الأحرف المسموح به والتنسيقات المتوقّعة).
  • أدرِج في النماذج تعليمات واضحة للنظام تحدّد ضوابط حول كيفية معالجة إدخالات المستخدم.

فرض وضع "النماذج فقط"

ننصحك بفرض وضع النماذج فقط بعد أن تستخدم جميع ميزات تطبيقك نماذج الطلبات من الخادم. عند تفعيلها، تحظر Firebase AI Logic جميع الطلبات المباشرة غير المستندة إلى نماذج إلى Gemini API (403: unauthorized)، ما يمنع الجهات المسيئة من إرسال طلبات عشوائية أو إساءة استخدام حصتك.

المراقبة والحدود والفوترة

يمكنك الاطّلاع على الزيارات الواردة والشذوذات الأمنية، وحماية مشروعك من الارتفاعات غير المتوقّعة في الاستخدام أو التكاليف المرتفعة.

إعداد ميزة تتبُّع استخدام الذكاء الاصطناعي في وحدة تحكّم Firebase

إعداد تتبّع استخدام الذكاء الاصطناعي في Firebase وحدة التحكّم للحصول على إحصاءات حول المقاييس الرئيسية، مثل عدد الطلبات ووقت الاستجابة واستخدام الرموز المميزة ونِسب الخطأ (بما في ذلك حالات تعذُّر المصادقة 401 وحالات الحظر التي تستخدم النموذج 403 فقط). يمكنك أيضًا فحص عمليات التتبُّع الفردية في وحدة تحكّم Google Cloud.

ضبط حدود المعدّل وإدارة الحصص

حماية مشروعك من الارتفاعات غير المتوقّعة في الاستخدام وهجمات رفض المحفظة:

تجنُّب الفواتير المفاجئة من خلال التنبيهات وحدود الإنفاق

إذا كان مشروع Firebase الخاص بك على خطة Blaze المَرِنة للدفع حسب الاستخدام:

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