VPC Service Controls

تتيح عناصر التحكّم في خدمة سحابة VPC للمؤسسات تحديد محيط حول موارد Google Cloud للحدّ من مخاطر استخراج البيانات. باستخدام VPC Service Controls، يمكنك إنشاء حدود تحمي الموارد والبيانات الخاصة بالخدمات التي تحدّدها بشكل صريح.

خدمات Cloud Firestore مجمّعة

يتم تجميع واجهات برمجة التطبيقات التالية معًا في "عناصر التحكّم في خدمة سحابة VPC":

  • firestore.googleapis.com
  • datastore.googleapis.com
  • firestorekeyvisualizer.googleapis.com

عند حظر خدمة firestore.googleapis.com في محيط جغرافي، يحظر المحيط الجغرافي أيضًا خدمتَي datastore.googleapis.com وfirestorekeyvisualizer.googleapis.com.

حظر خدمة datastore.googleapis.com

يتم تجميع خدمة datastore.googleapis.com ضمن خدمة firestore.googleapis.com. لتقييد خدمة datastore.googleapis.com، يجب تقييد خدمة firestore.googleapis.com على النحو التالي:

  • عند إنشاء محيط خدمة باستخدام Google Cloud Console، أضِف Cloud Firestore كخدمة محظورة.
  • عند إنشاء حيّز خدمة باستخدام Google Cloud CLI، استخدِم firestore.googleapis.com بدلاً من datastore.googleapis.com.

    --perimeter-restricted-services=firestore.googleapis.com
    

App Engine الخدمات المجمّعة القديمة مقابل Datastore

لا تتوافق خدمات App Engine القديمة المجمّعة مع Datastore حدود الخدمة. تؤدي حماية خدمة Datastore باستخدام محيط خدمة إلى حظر حركة البيانات من الخدمات المجمّعة القديمة App Engine. تشمل الخدمات المجمّعة القديمة ما يلي:

حماية الخروج في عمليات الاستيراد والتصدير

تتوافق Cloud Firestore مع عناصر التحكّم في خدمة VPC، ولكنها تتطلّب إعدادات إضافية للحصول على حماية كاملة من الخروج في عمليات الاستيراد والتصدير. يجب استخدام وكيل خدمة Cloud Firestore لتفويض عمليات الاستيراد والتصدير بدلاً من حساب خدمة App Engine التلقائي. اتّبِع التعليمات التالية لعرض حساب التفويض وضبطه لعمليات الاستيراد والتصدير.

Cloud Firestore وكيل الخدمة

تستخدم Cloud Firestore وكيل خدمة Cloud Firestore لتفويض عمليات الاستيراد والتصدير بدلاً من استخدام حساب خدمة App Engine. يستخدم وكيل الخدمة وحساب الخدمة اصطلاحات التسمية التالية:

Cloud Firestore وكيل الخدمة
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com

كانت Cloud Firestore تستخدم سابقًا حساب الخدمة التلقائي App Engine بدلاً من وكيل خدمة Cloud Firestore. إذا كانت قاعدة البيانات لا تزال تستخدم حساب الخدمة App Engine لاستيراد البيانات أو تصديرها، ننصحك باتّباع التعليمات الواردة في هذا القسم لنقل البيانات إلى استخدام وكيل الخدمة Cloud Firestore.

App Engine حساب خدمة
PROJECT_ID@appspot.gserviceaccount.com

يُفضَّل استخدام وكيل خدمة Cloud Firestore لأنّه مخصّص لـ Cloud Firestore. يتم مشاركة حساب الخدمة App Engine بين أكثر من خدمة واحدة.

عرض حساب التفويض

يمكنك الاطّلاع على الحساب الذي تستخدمه عمليات الاستيراد والتصدير لتفويض الطلبات من صفحة الاستيراد/التصدير في Google Cloud Console. يمكنك أيضًا معرفة ما إذا كانت قاعدة البيانات تستخدم وكيل خدمة Cloud Firestore.

  1. اطّلِع على حساب التفويض بجانب التصنيف تشغيل مهام الاستيراد/التصدير باسم.

إذا كان مشروعك لا يستخدم وكيل خدمة Cloud Firestore، يمكنك الانتقال إلى وكيل خدمة Cloud Firestore باستخدام إحدى الطريقتين التاليتين:

يُفضّل استخدام الأسلوب الأول لأنّه يحصر نطاق التأثير في مشروع Cloud Firestore واحد. لا يُنصح باستخدام الأسلوب الثاني لأنّها لا تنقل أذونات حزمة Cloud Storage الحالية. ومع ذلك، يوفّر هذا الإصدار إمكانية الامتثال لمعايير الأمان على مستوى المؤسسة.

نقل البيانات من خلال التحقّق من أذونات حزمة Cloud Storage وتعديلها

تتضمّن عملية نقل البيانات خطوتَين:

  1. عدِّل أذونات حزمة Cloud Storage. يُرجى الاطّلاع على القسم التالي لمعرفة التفاصيل.
  2. أكِّد عملية نقل البيانات إلى وكيل خدمة Cloud Firestore.

أذونات حزمة وكيل الخدمة

بالنسبة إلى أي عمليات تصدير أو استيراد تستخدم حزمة Cloud Storage في مشروع آخر، يجب منح أذونات الحزمة لوكيل خدمة Cloud Firestore. على سبيل المثال، تحتاج العمليات التي تنقل البيانات إلى مشروع آخر إلى الوصول إلى حزمة في هذا المشروع الآخر. وإلا، ستتعذّر هذه العمليات بعد نقل البيانات إلى وكيل خدمة Cloud Firestore.

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

عدِّل أذونات حِزم Cloud Storage من مشاريع أخرى لمنح إذن الوصول إلى حساب خدمة service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com. امنح وكيل الخدمة الدور Firestore Service Agent.

يمنح الدور Firestore Service Agent أذونات القراءة والكتابة لحزمة Cloud Storage. إذا كنت بحاجة إلى منح أذونات القراءة فقط أو الكتابة فقط، استخدِم دورًا مخصّصًا.

تساعدك عملية نقل البيانات الموضّحة في القسم التالي في تحديد Cloud Storage التي قد تتطلّب تعديلات على الأذونات.

نقل مشروع إلى حساب خدمة Firestore

أكمِل الخطوات التالية للانتقال من حساب خدمة App Engine إلى وكيل خدمة Cloud Firestore. بعد اكتمال عملية النقل، لا يمكن التراجع عنها.

  1. إذا لم يتم نقل مشروعك بعد إلى وكيل خدمة Cloud Firestore، سيظهر بانر يصف عملية النقل وزر التحقّق من حالة الحزمة. تساعدك الخطوة التالية في تحديد أخطاء الأذونات المحتملة وإصلاحها.

    انقر على التحقّق من حالة الحزمة.

    ستظهر قائمة تتضمّن خيار إكمال عملية نقل البيانات وقائمة Cloud Storage. قد يستغرق تحميل القائمة بضع دقائق.

    تتضمّن هذه القائمة حِزمًا تم استخدامها مؤخرًا في عمليات الاستيراد والتصدير، ولكنّها لا تمنح حاليًا أذونات القراءة والكتابة إلى وكيل خدمة Cloud Firestore.

  2. دوِّن اسم مدير خدمة Cloud Firestore المشروع. يظهر اسم وكيل الخدمة ضمن التصنيف وكيل الخدمة الذي سيتم منحه إذن الوصول.
  3. بالنسبة إلى أي حزمة في القائمة ستستخدمها في عمليات الاستيراد أو التصدير المستقبلية، عليك إكمال الخطوات التالية:

    1. في صف جدول هذه المجموعة، انقر على إصلاح. يؤدي هذا الإجراء إلى فتح صفحة أذونات الحزمة في علامة تبويب جديدة.

    2. انقر على إضافة.
    3. في حقل الجهات الرئيسية الجديدة، أدخِل اسم Cloud Firestore وكيل الخدمة.
    4. في الحقل اختيار دور، اختَر وكلاء الخدمة > وكيل خدمة Firestore.
    5. انقر على حفظ.
    6. ارجع إلى علامة التبويب التي تتضمّن صفحة Cloud Firestore الاستيراد/التصدير.
    7. كرِّر هذه الخطوات مع الحِزم الأخرى في القائمة. احرص على عرض جميع صفحات القائمة.
  4. انقر على النقل إلى "وكيل خدمة Firestore". إذا كانت لديك حِزم لا تزال تتضمّن عمليات تحقّق من الأذونات غير ناجحة، عليك تأكيد عملية نقل البيانات من خلال النقر على نقل البيانات.

    سيصلك تنبيه عند اكتمال عملية النقل. لا يمكن التراجع عن عملية نقل البيانات بعد بدئها.

عرض حالة نقل البيانات

للتحقّق من حالة نقل بيانات مشروعك، اتّبِع الخطوات التالية:

  1. ابحث عن المدير بجانب التصنيف تشغيل مهام الاستيراد/التصدير باسم.

    إذا كان العنصر الأساسي هو service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com، يعني ذلك أنّه تم نقل مشروعك إلى حساب خدمة Cloud Firestore. لا يمكن التراجع عن عملية نقل البيانات.

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

إضافة قيد سياسة على مستوى المؤسسة

  • اضبط الشرط التالي في سياسة مؤسستك:

    طلب توفّر وكيل خدمة Firestore لإجراء عمليات الاستيراد/التصدير (firestore.requireP4SAforImportExport)

    يتطلّب هذا القيد أن تستخدم عمليات الاستيراد والتصدير وكيل خدمة Cloud Firestore لتفويض الطلبات. لضبط هذا القيد، يُرجى الاطّلاع على إنشاء سياسات المؤسسة وإدارتها .

لا يؤدي تطبيق قيد سياسة المؤسسة هذا إلى منح أذونات حزمة Cloud Storage المناسبة تلقائيًا لوكيل خدمة Cloud Firestore.

إذا تسبّب القيد في حدوث أخطاء في الأذونات لأي من عمليات استيراد البيانات أو تصديرها، يمكنك إيقافه للعودة إلى استخدام حساب الخدمة التلقائي. بعد التحقّق من أذونات Cloud Storage bucket وتعديلها، يمكنك إعادة تفعيل القيد.