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

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

عند حظر طلب، سيكون الردّ خطأ 401: unauthenticated.

اعتبارات مهمّة

يُرجى الانتباه إلى الاعتبارات المهمة التالية المتعلّقة بوضع "المستخدمون المصادَق عليهم".

عند فرض وضع المستخدمين الذين تمت مصادقتهم

عند فرض وضع المستخدمين المُصادَق عليهم، يُرجى الانتباه إلى ما يلي:

  • هذا الإعداد هو إعداد على مستوى المشروع لـ "Firebase AI Logic".

    • وينطبق ذلك على جميع التطبيقات المسجّلة في المشروع.
    • وينطبق ذلك فقط على المشروع الذي يتم تنفيذه فيه.
  • يحظر هذا الإعداد جميع الطلبات عبر Firebase AI Logic التي لا ترسل بيانات اعتماد Firebase Authentication.

    • يجب مصادقة المستخدم من خلال Firebase Authentication قبل إرسال الطلب إلى Firebase AI Logic.
    • ينطبق هذا الإعداد على جميع الطلبات عبر Firebase AI Logic لكل من Gemini Developer API وAgent Platform Gemini API (formerly Vertex AI).
    • ينطبق هذا الإعداد على جميع الطلبات التي تستخدم نماذج الطلبات من الخادم.
    • لا يمكن تطبيق هذا الإعداد لكل مستخدم أو لكل واجهة برمجة تطبيقات أو لكل نموذج.
  • لا يحظر هذا الإعداد طلبات Gemini API في مشروعك التي لا تتم من خلال Firebase AI Logic.

  • إذا كنت تستخدم الوضع المختلط أو على الجهاز فقط:

    • يحظر هذا الإعداد الطلبات المرسَلة إلى النموذج المستضاف على السحابة الإلكترونية إذا لم تتم مصادقة المستخدم.
    • لا يحظر هذا الإعداد الطلبات الموجّهة إلى النموذج على الجهاز فقط بغض النظر عن حالة مصادقة المستخدم.
  • إذا كنت تستخدم Gemini Live API:

    • يحظر هذا الإعداد استخدام Gemini Live API في تطبيقات الويب عند استخدام "Firebase AI Logic"، حتى للمستخدمين الذين تمت مصادقتهم. ويشمل ذلك تطبيقات الويب التي تستخدم حزمة تطوير البرامج (SDK) لبرامج Firebase JS أو تطبيقات Flutter على الويب.
  • إذا كنت تستخدم Firebase AI Logic REST API:

    • يحظر هذا الإعداد طلبات الاستدلال التي لا ترسل بيانات اعتماد Firebase Authentication. ويشمل ذلك طلبات نماذج الطلبات الخاصة بالخادم، مثل templateGenerateContent أو templateStreamGenerateContent.
    • لا يحظر هذا الإعداد طلبات مستوى التحكّم (مثل طلبات إدارة النماذج والإعدادات) لأنّها محمية من خلال "إدارة الهوية وإمكانية الوصول".
  • لا يحظر هذا الإعداد الطلبات المرسَلة إلى countTokens (واجهة برمجة التطبيقات Count Tokens).

قبل فرض وضع "المستخدمون المصادَق عليهم"

يُرجى الانتباه إلى ما يلي قبل فرض وضع المستخدمين المُصادَق عليهم:

  • إذا كانت لديك إصدارات حالية من تطبيقك لا تستخدم Firebase Authentication:

    • سيؤدي هذا الإعداد إلى حظر الطلبات عبر Firebase AI Logic من إصدارات التطبيق الحالية.
    • يُرجى التأكّد من تحديث جميع البرامج النشطة لاستخدام Firebase Authentication قبل فرض وضع المستخدمين المُصادَق عليهم.
  • تتطلّب الإصدارات القديمة من المكوّن الإضافي Flutter إنشاء مثيل خاص لإرسال بيانات اعتماد Firebase Authentication مع الطلبات.

    • إذا كان تطبيقك يستخدم المكوّن الإضافي Flutter firebase_ai الإصدار 3.11.0 أو إصدارًا أقدم (BoM الإصدار 4.12.0 أو إصدارًا أقدم) ولا يمرر Authentication أثناء إنشاء مثيل، سيؤدي هذا الإعداد إلى حظر الطلبات عبر Firebase AI Logic، حتى للمستخدمين الذين تمت مصادقتهم.
    • تأكَّد من تحديث جميع برامج Flutter النشطة إلى إصدار أحدث من المكوّن الإضافي قبل فرض وضع المستخدمين الذين تمت مصادقتهم.

إعداد "Firebase Authentication"

توفّر مستندات Firebase Authentication أوصافًا وتعليمات تنفيذ لموفّري المصادقة المتوافقين، بما في ذلك استخدام كلمات المرور وأرقام الهواتف وموفّري الهوية الموحّدة الرائجين (مثل Google وFacebook وGitHub) وغير ذلك.

بعد تنفيذ Firebase Authentication في تطبيقك، سيرسل تطبيقك تلقائيًا بيانات اعتماد Firebase Authentication للمستخدم الذي تمت مصادقته في كل طلب إلى Firebase AI Logic.

يُرجى ملاحظة ما يلي بشأن بعض موفّري المصادقة:

  • المصادقة المخصّصة: عليك جلب رمز مميّز موقَّع للمصادقة لإرساله مع الطلب إلى Firebase AI Logic. لمعرفة التفاصيل، يُرجى الاطّلاع على المصادقة المخصّصة.

  • طرق المصادقة مجهول أو البريد الإلكتروني/كلمة المرور: يُعتبر هؤلاء المستخدمون مُصادَق عليهم، لذا لا يتم حظر طلباتهم إلى Firebase AI Logic.

    يُرجى العِلم أنّه على الرغم من أنّ طريقتَي المصادقة المجهولة والمصادقة باستخدام البريد الإلكتروني وكلمة المرور تتطلّبان من المستخدمين الانتقال إلى تطبيقك لإنشاء Firebase Authentication بيانات الاعتماد، إلا أنّهما ليستا من أشكال المصادقة القوية (خاصةً لحماية الموارد المدفوعة) لأنّهما لا تتطلّبان تلقائيًا إثبات هوية المستخدم. إذا كان تطبيقك يستخدم التنفيذ التلقائي لطرق المصادقة هذه، قد تكون الحماية أقل حتى إذا فرضت وضع المستخدمين الذين تمت مصادقتهم. تأكَّد من أنّك فرضت أيضًا Firebase App Check.

إدارة إعداد وضع المستخدمين المُصادَق عليهم

يمكنك إدارة إعدادات وضع المستخدمين الذين تمت مصادقتهم في وحدة تحكّم "Firebase".

الأذونات والأدوار المطلوبة في "إدارة الهوية وإمكانية الوصول"

تتطلّب إدارة إعدادات وضع المستخدمين الذين تمت مصادقتهم الحصول على إذن firebasevertexai.configs.update، وهو مضمَّن تلقائيًا في أدوار "إدارة الهوية وإمكانية الوصول" التالية: "المالك" و"المحرِّر" و"مشرف Firebase" و"مشرف Firebase AI Logic".

فرض وضع المستخدمين الذين تمت مصادقتهم

في ما يلي كيفية فرض وضع المستخدمين الذين تمت مصادقتهم في مشروع Firebase:

  1. إذا لم يسبق لك ذلك، راجِع الاعتبارات المهمة لوضع المستخدمين المصادَق عليهم في وقت سابق من هذا الدليل.

  2. إعداد Firebase Authentication في تطبيقك إذا لم يسبق لك ذلك (كما هو موضّح سابقًا في هذا الدليل)

  3. فرض وضع "المستخدمون الذين تمت مصادقتهم":

    1. في وحدة تحكّم Firebase، انتقِل إلى خدمات الذكاء الاصطناعي > AI Logic > علامة التبويب الإعدادات.

    2. ضمن وضع المستخدمين المصادَق عليهم، حرِّك مفتاح التبديل فرض وضع المستخدمين المصادَق عليهم إلى مفروض.

    3. راجِع مربّع حوار التأكيد، ثم انقر على تأكيد.

إيقاف فرض "وضع المستخدمين المصادَق عليهم"

في حال إيقاف فرض وضع "المستخدمون المصادَق عليهم"، يُرجى العِلم بما يلي:

  • سيتم السماح بالطلبات الواردة عبر Firebase AI Logic والتي لا ترسل بيانات اعتماد Firebase Authentication.
  • هذا الإعداد متاح على مستوى المشروع في Firebase AI Logic.

في ما يلي كيفية إيقاف فرض وضع "المستخدمون المصادَق عليهم" في مشروعك على Firebase:

  1. في وحدة تحكّم Firebase، انتقِل إلى خدمات الذكاء الاصطناعي > AI Logic > علامة التبويب الإعدادات.

  2. ضمن وضع المستخدمين المُصادَق عليهم، أوقِف فرض وضع المستخدمين المُصادَق عليهم.

  3. راجِع مربّع حوار التأكيد، ثم انقر على تأكيد.