يتم تلقائيًا تشفير جميع البيانات غير النشطة في Cloud Firestore باستخدام تشفير Google التلقائي. Cloud Firestore تتولّى هذه الخدمة عملية التشفير وإدارتها بدون أن يكون عليك اتّخاذ أي إجراء إضافي.
إذا كانت لديك متطلبات امتثال أو تنظيمية معيّنة متعلقة بالمفاتيح التي تحمي بياناتك، يمكنك استخدام مفاتيح التشفير التي يديرها العميل (CMEK) في Cloud Firestore. بدلاً من أن تتولّى Google إدارة مفاتيح التشفير التي تحمي بياناتك، تتم حماية قاعدة بيانات Cloud Firestore باستخدام مفتاح يمكنك التحكّم فيه وإدارته في Cloud Key Management Service (Cloud KMS).
توضّح هذه الصفحة مفاتيح التشفير المُدارة من قِبل العميل (CMEK) في Cloud Firestore. لمزيد من المعلومات حول مفاتيح التشفير المُدارة من العميل (CMEK) بشكل عام، بما في ذلك الحالات التي يجب فيها تفعيلها وأسباب ذلك، يمكنك الاطّلاع على مستندات Cloud KMS التالية:
للحصول على تعليمات حول تنفيذ المهام ذات الصلة بمفاتيح التشفير المُدارة للعميل (CMEK) باستخدام Cloud Firestore، يُرجى الاطّلاع على استخدام مفاتيح التشفير المُدارة للعميل.
الميزات
- التحكّم في البيانات: تتيح لك "مفاتيح التشفير التي يديرها العميل" إدارة مفتاح KMS. يمكنك تدوير المفتاح المستخدَم لتشفير البيانات الساكنة في قاعدة بيانات Cloud Firestore أو إيقافه أو محوه.
- الأداء: لا تؤثر إدارة مفاتيح التشفير التي يقدّمها العميل (CMEK) في اتفاقية مستوى الخدمة Cloud Firestore.
- إمكانية التدقيق: في حال تفعيل سجلّ التدقيق في Cloud KMS، سيتم تسجيل جميع العمليات التي يتم إجراؤها على المفتاح ويمكن الاطّلاع عليها في Cloud Logging.
- قيود سياسة المؤسسة: يمكنك استخدام قيود سياسة المؤسسة الخاصة بمفاتيح CMEK لتحديد متطلبات الامتثال للتشفير في قواعد بيانات Cloud Firestore في مؤسستك.
الأسعار
تفرض خدمة Cloud KMS رسومًا على تكلفة المفتاح وأي عمليات تشفير يتم إجراؤها باستخدام هذا المفتاح. لمزيد من المعلومات، اطّلِع على أسعار Cloud KMS.
يتم تحصيل رسوم منك مقابل تكاليف العملية عندما يطلب Cloud Firestore من مفتاح Cloud KMS تنفيذ عملية تشفير أو فك تشفير. تحدث عملية التشفير أو فك التشفير باستخدام المفتاح المُدار من قِبل العميل كل 5 دقائق، ولا تتم مزامنتها مع طلبات قاعدة البيانات. تكون التكاليف منخفضة بشكل عام، نظرًا إلى العدد المتوقّع من عمليات التشفير التي يتم إنشاؤها بواسطة Cloud Firestore. تُعد تكاليف "سجلات تدقيق السحابة الإلكترونية" نفقات إضافية، ولكن من المتوقّع أن تكون منخفضة بشكل عام، وذلك بالنظر إلى العدد المتوقّع من عمليات التشفير.
ما مِن Cloud Firestore تكاليف إضافية لاستخدام قاعدة بيانات محمية باستخدام مفتاح التشفير المُدارة من العميل (CMEK)، وسيظل Cloud Firestore التسعير ساريًا.
إذا أبطلت مفتاح قاعدة بيانات، سيتم تحصيل تكلفة التخزين استنادًا إلى حجم آخر يوم كان المفتاح متاحًا فيه. ستستمر في تكبُّد تكاليف التخزين بحجم قاعدة البيانات هذا إلى أن يتم حذف قاعدة البيانات أو يصبح المفتاح متاحًا مرة أخرى.
ما هي البيانات المحمية باستخدام مفاتيح التشفير المُدارة للعميل؟
عند إنشاء Cloud Firestore قاعدة بيانات محمية باستخدام مفتاح التشفير المُدارة من العميل، يتم استخدام مفتاح Cloud KMS لحماية البيانات غير النشطة. ويشمل ذلك البيانات التي تخزِّنها على قرص أو محرك أقراص فلاش، بما في ذلك الفهارس والنسخ الاحتياطية. تسري بعض الاستثناءات. يتم تشفير أنواع البيانات التالية باستخدام التشفير التلقائي من Google وليس باستخدام مفتاح CMEK:
- البيانات أثناء نقلها أو في الذاكرة
- البيانات الوصفية لقاعدة البيانات
كيفية التعامل مع حالة المفتاح غير المتاح
لا يتم إصدار عمليات التشفير وفك التشفير في كل طلب بيانات. بدلاً من ذلك، يطلب نظام Cloud Firestore من Cloud KMS كل 5 دقائق التحقّق مما إذا كان المفتاح لا يزال متاحًا، ثم ينفّذ عمليات التشفير وفك التشفير إذا كان المفتاح متاحًا.
إذا رصد النظام أنّ المفتاح غير متوفّر، ستعرض أي طلبات لاحقة إلى قاعدة بيانات Cloud Firestore، بما في ذلك عمليات القراءة والكتابة والاستعلامات، الخطأ INVALID_ARGUMENT مع الرسالة التالية في غضون 10 دقائق:
The customer-managed encryption key required by the requested
resource is not accessible.
إذا كانت قاعدة البيانات تتضمّن سياسات مدة البقاء (TTL)، وإذا تم تجاوز أي أوقات انتهاء صلاحية أثناء عدم توفّر المفتاح، سيتم تأخير حذف البيانات حسب مدة البقاء إلى حين إعادة المفتاح. إذا كانت قاعدة البيانات تتضمّن عمليات طويلة الأمد قيد التقدّم، ستتأثر هذه العمليات كما يلي:
- ستتوقّف عمليات إنشاء الفهرس والعمليات التي تفعّل سياسات جديدة بشأن مدة البقاء عن إحراز أي تقدّم. ستتم إعادة محاولة تنفيذ العمليات المتوقفة إذا تمت إعادة مفتاح التشفير.
تُعتبر المفاتيح غير متاحة في أي حالة تمنع Cloud Firestore عمدًا من الوصول إلى المفتاح. ويشمل ذلك ما يلي:
- إيقاف أو إتلاف إصدار المفتاح المستخدَم يجب توخّي الحذر عند إتلاف إصدار مفتاح، لأنّ هذا الإجراء قد يؤدي إلى فقدان بيانات لا يمكن استردادها.
- إزالة الإذن بالوصول إلى المفتاح من حساب خدمة Cloud Firestore
في حال إعادة المفتاح، يرصد إجراء الاستطلاع أنّ المفتاح أصبح متاحًا مرة أخرى. تتم إعادة تفعيل إمكانية الوصول عادةً في غضون دقائق، ولكن قد تستغرق بضع ساعات في حالات نادرة. يُرجى العِلم أنّ بعض العمليات على مفاتيح Cloud KMS، مثل إيقاف مفتاح أو إتلافه، قد تستغرق مدة تصل إلى 3 ساعات ليتم تنفيذها. لا يرصد Cloud Firestore أي تغييرات إلا بعد أن تصبح سارية في Cloud KMS.
تتضمّن إعادة تفعيل المفتاح ما يلي، حسب الموقف:
- إعادة تفعيل نسخة مفتاح تم إيقافها
- استعادة نسخة مفتاح تم إتلافها قبل إتلاف نسخة المفتاح نهائيًا، تتم جدولة عملية الإتلاف. يمكنك استعادة مفتاح خلال الفترة المحدّدة لتدمير إصدار المفتاح فقط. لا يمكنك استعادة مفتاح تم إتلافه نهائيًا.
- إعادة منح إذن الوصول إلى المفتاح Cloud Firestore لوكيل الخدمة
اعتبارات تغيير المفتاح
عند تدوير مفتاح CMEK، تعيد Cloud Firestore تشفير قاعدة البيانات باستخدام أحدث إصدار أساسي من مفتاح CMEK. أثناء عملية إعادة التشفير، يجب إبقاء كل من الإصدار السابق والجديد من المفتاح متاحًا. بعد انتهاء عملية إعادة التشفير، لن يؤدي إيقاف الإصدارات السابقة من مفتاح CMEK أو حذفها إلى إيقاف إمكانية الوصول إلى قاعدة البيانات لأنّها مشفّرة باستخدام الإصدار الجديد من المفتاح الأساسي.
يمكنك أيضًا الاطّلاع على إصدارات المفاتيح المستخدَمة لحماية قاعدة بيانات. لمزيد من المعلومات، يمكنك الاطّلاع على عرض المفتاح المستخدَم.
اعتبارات المفاتيح الخارجية
عند استخدام مفتاح Cloud EKM، لا تتحكّم Google في مدى توفّر مفتاحك المُدار خارجيًا في نظام شريك إدارة المفاتيح الخارجية.
في حال عدم توفّر مفتاح مُدار خارجيًا، تواصل Cloud Firestore إتاحة عمليات قاعدة البيانات الكاملة باستخدام نسخة مخزّنة مؤقتًا من المفتاح لمدة تصل إلى ساعة واحدة.
بعد مرور ساعة، إذا لم يتمكّن Cloud Firestore من الاتصال بخدمة Cloud KMS، سيبدأ Cloud Firestore في إيقاف قاعدة البيانات بلا إنترنت كإجراء وقائي. ستتعذّر الطلبات إلى قاعدة البيانات وسيظهر الخطأ INVALID_ARGUMENT الذي يتضمّن تفاصيل إضافية.
يمكنك الاطّلاع على مستندات Cloud External Key Manager لمعرفة المزيد من الاعتبارات عند استخدام مفاتيح خارجية.
الاحتفاظ بنسخة احتياطية والاستعادة
تستخدم النسخة الاحتياطية آلية التشفير نفسها التي تستخدمها قاعدة البيانات التي أنشأتها منها. عندما تنشئ قاعدة بيانات محمية باستخدام مفتاح تشفير مُدار من العميل (CMEK) نسخة احتياطية، يتم تشفير النسخة الاحتياطية باستخدام إصدار المفتاح الأساسي المستخدَم في وقت إنشاء النسخة الاحتياطية.Cloud Firestore
تنشئ Cloud Firestore النسخة الاحتياطية الأولى من قاعدة بيانات CMEK بعد مرور 24 ساعة من لحظة تفعيل جداول النسخ الاحتياطي.
لمزيد من المعلومات حول النُسخ الاحتياطية في Cloud Firestore، يُرجى الاطّلاع على الاحتفاظ بنسخة احتياطية من البيانات واستعادتها.
تستخدم قاعدة البيانات التي تم استعادتها من نسخة احتياطية آلية التشفير نفسها المستخدَمة في النسخة الاحتياطية تلقائيًا. عند استعادة قاعدة بيانات، يمكنك تحديد نوع تشفير مختلف بإحدى الطرق التالية:
- استعادة البيانات إلى قاعدة بيانات تستخدم مفاتيح التشفير المُدارة من قِبل العميل (CMEK) مع مفتاح تم تحديده حديثًا
- استعادة البيانات إلى قاعدة بيانات غير مفعَّلة فيها ميزة "إدارة مفاتيح التشفير من قِبل العميل" وتستخدم التشفير التلقائي من Google
- استعادة البيانات إلى قاعدة بيانات تستخدم التشفير نفسه المستخدَم في النسخة الاحتياطية
لمزيد من المعلومات حول استعادة قاعدة بيانات Cloud Firestore من نسخة احتياطية، يُرجى الاطّلاع على استعادة البيانات من نسخة احتياطية لقاعدة بيانات. لمزيد من المعلومات حول استعادة قاعدة بيانات Cloud Firestore محمية باستخدام مفتاح تشفير يديره العميل (CMEK) من نسخة احتياطية، يُرجى الاطّلاع على استعادة قاعدة بيانات محمية باستخدام مفتاح تشفير يديره العميل.
استنساخ
بشكلٍ تلقائي، تستخدم قاعدة البيانات المستنسَخة من قاعدة بيانات أخرى آلية التشفير نفسها التي تستخدمها قاعدة البيانات المصدر. عند استنساخ قاعدة بيانات، يمكنك تحديد نوع تشفير مختلف بإحدى الطرق التالية:
- استنساخ إلى قاعدة بيانات تستخدم مفتاح تشفير مُدارًا للعميل (CMEK) مع مفتاح تم تحديده حديثًا
- استنساخ قاعدة بيانات غير مفعَّلة فيها ميزة "إدارة مفاتيح التشفير الخاصة بالعميل" وتستخدِم التشفير التلقائي من Google
- (تلقائي) استنساخ إلى قاعدة بيانات تستخدم التشفير نفسه الذي تستخدمه قاعدة البيانات المصدر
لمزيد من المعلومات حول استنساخ قاعدة بيانات Cloud Firestore، راجِع مقالة استنساخ قاعدة بيانات. لمزيد من المعلومات حول استنساخ قاعدة بيانات Cloud Firestore محمية باستخدام مفاتيح التشفير المُدارة من العميل (CMEK)، يُرجى الاطّلاع على استنساخ قاعدة بيانات محمية باستخدام مفاتيح التشفير المُدارة من العميل.
تتبُّع المفاتيح
يمكنك استخدام ميزة تتبُّع المفاتيح لعرض المراجع، مثل Cloud Firestore قواعد البيانات، التي يحميها المفتاح. لمزيد من المعلومات عن تتبُّع المفاتيح، اطّلِع على مقالة عرض استخدام المفاتيح.
مفاتيح CMEK ومدى توفّرها
عندما تكون المفاتيح غير متاحة أو غير مفعّلة، يجب الانتباه إلى السلوكيات التالية التي يمكن أن تحدث في قواعد البيانات المفعَّلة باستخدام CMEK:
يمكنك حذف قاعدة بيانات CMEK تحتوي على مفاتيح غير متاحة.
عند إنشاء قاعدة بيانات مفعَّلة باستخدام مفتاح التشفير المُدارة من العميل (CMEK)، لا تظهر المفاتيح غير المفعَّلة في قائمة المفاتيح المتاحة في Google Cloud Console. إذا أدخلت مفتاحًا غير مفعَّل يدويًا، ستتعذّر عملية إنشاء قاعدة البيانات وسيظهر الخطأ 400.
INVALID_ARGUMENT
القيود
لا يمكنك تغيير مفتاح لقاعدة بيانات محمية باستخدام مفتاح تشفير يديره العميل (CMEK). يمكنك تدوير المفاتيح وتفعيلها وإيقافها.
لا يمكنك تفعيل CMEK على قواعد البيانات الحالية. يمكنك تفعيل ميزة "إدارة المفاتيح التي يقدّمها العميل" (CMEK) على قواعد البيانات الجديدة فقط، ويجب تفعيلها عند إنشاء قاعدة البيانات. لنقل البيانات في قاعدة بيانات حالية غير محمية باستخدام مفتاح التشفير المُدارة من العميل (CMEK) إلى قاعدة بيانات محمية باستخدام مفتاح التشفير المُدارة من العميل (CMEK)، عليك تصدير بياناتك ثم استيرادها إلى قاعدة بيانات جديدة محمية باستخدام مفتاح التشفير المُدارة من العميل (CMEK). يمكنك أيضًا استعادة البيانات أو استنساخها من قاعدة بيانات غير مستخدِمة لمفاتيح التشفير المُدارة للعميل إلى قاعدة بيانات مستخدِمة لها.
تتيح Cloud Firestore عددًا محدودًا من قواعد البيانات المحمية باستخدام مفتاح التشفير المُدارة من العميل (CMEK).