تشفير البيانات باستخدام المفاتيح المدارة من قبل العميل لقاعدة بيانات Azure ل MySQL - الخادم المرن

ينطبق على: قاعدة بيانات Azure ل MySQL - خادم مرن

باستخدام تشفير البيانات باستخدام المفاتيح المدارة من قبل العميل لقاعدة بيانات Azure لخادم MySQL المرن، يمكنك إحضار المفتاح الخاص بك (BYOK) لحماية البيانات الثابتة وتنفيذ فصل المهام لإدارة المفاتيح والبيانات. باستخدام المفاتيح المدارة من قبل العميل (CMKs)، يكون العميل مسؤولا عن إدارة دورة حياة المفتاح ويتحكم فيها في النهاية (إنشاء المفتاح وتحميله وتدارته وحذفه) وأذونات استخدام المفاتيح وعمليات التدقيق على المفاتيح.

إشعار

يتم دعم Azure Key Vault Managed HSM (وحدة أمان الأجهزة) حاليا للمفاتيح التي يديرها العميل لقاعدة بيانات Azure لخادم MySQL المرن.

المزايا

يوفر تشفير البيانات باستخدام مفاتيح مدارة من قبل العميل لقاعدة بيانات Azure لخادم MySQL المرن المزايا التالية:

  • يمكنك التحكم الكامل في الوصول إلى البيانات من خلال القدرة على إزالة المفتاح وجعل قاعدة البيانات غير قابلة للوصول
  • التحكم الكامل في دورة حياة المفتاح، بما في ذلك تدوير المفتاح للتوافق مع نهج الشركة
  • الإدارة المركزية وتنظيم المفاتيح في Azure Key Vault أو HSM المدار
  • القدرة على تنفيذ الفصل بين المهام بين ضباط الأمن وDBA ومسؤولي النظام

كيف يعمل تشفير البيانات باستخدام مفتاح يديره العميل؟

توفر الهويات المدارة في معرف Microsoft Entra خدمات Azure بديلا لتخزين بيانات الاعتماد في التعليمات البرمجية عن طريق توفير هوية معينة تلقائيا يمكن استخدامها للمصادقة على أي خدمة تدعم مصادقة Microsoft Entra، مثل Azure Key Vault (AKV). يدعم خادم Azure Database for MySQL المرن حاليا الهوية المدارة المعينة من قبل المستخدم فقط (UMI). لمزيد من المعلومات، راجع أنواع الهويات المُدارة في Azure.

لتكوين CMK لقاعدة بيانات Azure لخادم MySQL المرن، تحتاج إلى ربط UMI بالخادم وتحديد مخزن Azure Key والمفتاح المراد استخدامه.

يجب أن يكون لدى UMI الوصول التالي إلى مخزن المفاتيح:

  • Get: لاسترداد الجزء العام وخصائص المفتاح في مخزن المفاتيح.
  • القائمة: سرد إصدارات المفتاح المخزنة في Azure Key Vault.
  • مفتاح التضمين: لتتمكن من تشفير DEK. يتم تخزين DEK المشفرة في قاعدة بيانات Azure لمثيل الخادم المرن MySQL.
  • مفتاح إلغاء التضمين: لتكون قادرًا على فك تشفير مفتاح التشفير. يحتاج خادم Azure Database for MySQL المرن إلى DEK الذي تم فك تشفيره لتشفير/فك تشفير البيانات.

إذا تم تمكين RBAC، يجب أيضا تعيين UMI للدور التالي:

  • مستخدم تشفير خدمة تشفير Key Vault أو الدور الذي له الأذونات:
    • Microsoft.KeyVault/vaults/keys/wrap/action
    • Microsoft.KeyVault/vaults/keys/unwrap/action
    • Microsoft.KeyVault/vaults/keys/read مثل "مستخدم تشفير خدمة تشفير Key Vault"
  • بالنسبة إلى HSM المدار، قم بتعيين دور مستخدم تشفير خدمة تشفير HSM المدارة

المصطلحات والوصف

مفتاح تشفير البيانات (DEK): مفتاح AES256 متماثل يستخدم لتشفير قسم أو كتلة بيانات. يؤدي تشفير كل كتلة من البيانات بمفتاح مختلف إلى زيادة صعوبة هجمات تحليل التشفير. يلزم الوصول إلى DEKs من قبل موفر الموارد أو مثيل التطبيق الذي يقوم بتشفير كتلة معينة وفك تشفيرها. عند استبدال DEK بمفتاح جديد، يجب إعادة تشفير البيانات الموجودة في الكتلة المرتبطة به بالمفتاح الجديد فقط.

مفتاح تشفير المفتاح (KEK): مفتاح تشفير يستخدم لتشفير مفاتيح التشفير. يسمح مفتاح تشفير المفاتيح الذي لا يترك Key Vault أبداً بتشفير مفاتيح التشفير نفسها والتحكم فيها. قد يكون الكيان الذي لديه حق الوصول إلى مفتاح تشفير المفاتيح مختلفاً عن الكيان الذي يتطلب مفتاح تشفير. نظرا لأن KEK مطلوب لفك تشفير DEKs، فإن KEK هو بفعالية نقطة واحدة يمكن من خلالها حذف DEKs بشكل فعال عن طريق حذف KEK. يتم تخزين مفاتيح التشفير المشفرة باستخدام مفاتيح تشفير المفاتيح بشكل منفصل. يمكن فقط للكيان الذي له حق الوصول إلى مفتاح تشفير المفاتيح فك تشفير مفاتيح التشفير هذه. للمزيد من المعلومات، يرجى مراجعة الأمن في التشفير في حالة الثبات.

طريقة العمل

يتم تعيين تشفير البيانات باستخدام CMK على مستوى الخادم. بالنسبة لخادم معين، يتم استخدام CMK، يسمى مفتاح تشفير المفتاح (KEK)، لتشفير مفتاح تشفير بيانات الخدمة (DEK). KEK هو مفتاح غير متماثل مخزن في مثيل Azure Key Vault المملوك للعميل والمدار من قبل العميل. Key Vault هو تخزين آمن عالي التوفر وقابل للتطوير لمفاتيح تشفير RSA، مدعوم اختياريا بوحدات أمان الأجهزة التي تم التحقق من صحتها FIPS 140 (HSMs). لا يسمح Azure Key Vault بالوصول المباشر إلى مفتاح مخزن، ولكنه يوفر بدلاً من ذلك خدمات التشفير / فك التشفير باستخدام المفتاح إلى الكيانات المعتمدة. يمكن لمخزن المفاتيح، الذي تم استيراده، إنشاء المفتاح، أو نقله إلى مخزن المفاتيح من جهاز HSM محلي.

عند تكوين خادم مرن لاستخدام CMK المخزن في مخزن المفاتيح، يرسل الخادم DEK إلى مخزن المفاتيح للتشفير. يقوم Key Vault بإرجاع DEK المشفرة المخزنة في قاعدة بيانات المستخدم. وبالمثل، سيرسل الخادم المرن DEK المحمي إلى مخزن المفاتيح لفك التشفير عند الحاجة.

رسم تخطيطي لكيفية عمل تشفير البيانات باستخدام مفتاح يديره العميل.

بعد تمكين التسجيل، يمكن للمدققين استخدام Azure Monitor لمراجعة سجلات أحداث تدقيق Key Vault. لتمكين تسجيل أحداث تدقيق Key Vault، راجع مراقبة خدمة key vault باستخدام تفاصيل Key Vault.

إشعار

قد تستغرق تغييرات الأذونات ما يصل إلى 10 دقائق للتأثير على مخزن المفاتيح. يتضمن ذلك إبطال أذونات الوصول إلى وسيلة حماية TDE في AKV، وقد يظل لدى المستخدمين، ضمن هذا الإطار الزمني أذونات الوصول.

متطلبات تكوين تشفير البيانات لقاعدة بيانات Azure لخادم MySQL المرن

قبل محاولة تكوين Key Vault أو HSM المدار، تأكد من تلبية المتطلبات التالية.

  • يجب أن ينتمي مثيل الخادم المرن Key Vault وقاعدة بيانات Azure ل MySQL إلى نفس مستأجر Microsoft Entra. يجب دعم Key Vault عبر المستأجرين وتفاعلات الخادم المرنة. ستحتاج إلى إعادة تكوين تشفير البيانات إذا قمت بنقل موارد Key Vault بعد إجراء التكوين.
  • يجب أن يتواجد مثيل الخادم المرن Key Vault وقاعدة بيانات Azure ل MySQL في نفس المنطقة.
  • قم بتمكين ميزة الحذف المبدئي على خزنة المفاتيح مع تعيين فترة استبقاء إلى 90 يوما للحماية من فقدان البيانات في حالة حدوث حذف مفتاح عرضي (أو Key Vault). إجراءات الاسترداد والإزالة لها أذوناتها الخاصة في نهج الوصول إلى Key Vault. يتم إيقاف تشغيل ميزة الحذف المبدئي افتراضيًا، ولكن يمكنك تمكينها من خلال مدخل Microsoft Azure أو باستخدام PowerShell أو Azure CLI.
  • قم بتمكين ميزة Purge Protection في مخزن المفاتيح مع تعيين فترة الاستبقاء إلى 90 يومًا. عند تشغيل الحماية من المسح، لا يمكن إزالة مخزن أو عنصر في الحالة المحذوفة حتى انقضاء فترة الاحتفاظ. يمكنك تمكين هذه الميزة باستخدام PowerShell أو Azure CLI، وفقط بعد تمكين الحذف المبدئي.

قبل محاولة تكوين CMK، تأكد من تلبية المتطلبات التالية.

  • يمكن أن يكون المفتاح الذي يديره العميل لتشفير DEK غير متماثل فقط، RSA\RSA-HSM(Vaults with Premium SKU) 2048,3072 أو 4096.
  • يجب أن يكون تاريخ تنشيط المفتاح (إذا تم تعيينه) تاريخاً ووقتاً في الماضي. تاريخ انتهاء الصلاحية غير محدد.
  • يجب أن يكون المفتاح في الحالة ممكّن.
  • يجب أن يحتوي المفتاح على حذف مبدئي مع تعيين فترة الاستبقاء إلى 90 يومًا. يؤدي هذا ضمنيا إلى تعيين السمة الرئيسية المطلوبة recoveryLevel: "قابل للاسترداد".
  • يجب تمكين حماية المسح للمفتاح.
  • إذا كنت تقوم باستيراد مفتاح موجود إلى خزنة المفاتيح، فتأكد من توفيره بتنسيقات الملفات المدعومة (.pfx، .byok، .backup).

إشعار

للحصول على إرشادات مفصلة خطوة بخطوة حول كيفية تكوين تشفير التاريخ لقاعدة بيانات Azure لخادم MySQL المرن عبر مدخل Microsoft Azure، راجع تكوين تشفير البيانات لقاعدة بيانات Azure لخادم MySQL المرن.

توصيات لتكوين تشفير البيانات

أثناء تكوين Key Vault أو HSM المدار لاستخدام تشفير البيانات باستخدام مفتاح مدار من قبل العميل، ضع في اعتبارك التوصيات التالية.

  • قم بتعيين تأمين مورد على Key Vault للتحكم في من يمكنه حذف هذا المورد الهام ومنع الحذف العرضي أو غير المصرح به.
  • تمكين التدقيق وإعداد التقارير على جميع مفاتيح التشفير. توفر Key Vault سجلات يسهل إدخالها في معلومات الأمان وأدوات إدارة الأحداث الأخرى. تحليلات سجلات Azure Monitor هي أحد الأمثلة على خدمة متكاملة بالفعل.
  • احتفظ بنسخة من المفتاح الذي يديره العميل في مكان آمن أو قم بإيداعه في خدمة الضمان.
  • في حال إنشاء المفتاح في Key Vault، فقم بإنشاء نسخة احتياطية للمفتاح قبل استخدام المفتاح للمرة الأولى. يمكنك فقط استعادة النسخ الاحتياطي إلى Key Vault. لمزيد من المعلومات حول أمر النسخ الاحتياطي، يرجى مراجعةBackup-AzKeyVaultKey.

إشعار

  • ينصح باستخدام مخزن مفاتيح من نفس المنطقة، ولكن إذا لزم الأمر، يمكنك استخدام مخزن مفاتيح من منطقة أخرى عن طريق تحديد معلومات "إدخال معرف المفتاح". يجب أن يكون HSM المدار من key vault في نفس المنطقة مثل الخادم المرن MySQL.

حالة المفتاح الذي لا يمكن الوصول إليه من قبل العميل

عند تكوين تشفير البيانات باستخدام CMK في Key Vault، يلزم الوصول المستمر إلى هذا المفتاح حتى يظل الخادم متصلاً بالإنترنت. إذا فقد الخادم المرن الوصول إلى المفتاح الذي يديره العميل في Key Vault، يبدأ الخادم في رفض جميع الاتصالات في غضون 10 دقائق. يصدر الخادم المرن رسالة خطأ مقابلة ويغير حالة الخادم إلى غير قابل للوصول. يمكن للخادم الوصول إلى هذه الحالة لأسباب مختلفة.

  • إذا قمت بحذف مخزن المفاتيح، فلن يتمكن مثيل خادم Azure Database for MySQL المرن من الوصول إلى المفتاح وسينتقل إلى حالة لا يمكن الوصول إليها . استرداد مخزن المفاتيح وإعادة التحقق من تشفير البيانات لجعل مثيل خادم Azure Database for MySQL المرن متوفرا.
  • إذا قمت بحذف المفتاح من مخزن المفاتيح، فلن يتمكن مثيل خادم Azure Database for MySQL المرن من الوصول إلى المفتاح وسينتقل إلى حالة لا يمكن الوصول إليها . استرداد المفتاح وإعادة التحقق من تشفير البيانات لجعل مثيل خادم Azure Database for MySQL المرن متوفرا.
  • إذا انتهت صلاحية المفتاح المخزن في Azure Key Vault، فسيصبح المفتاح غير صالح، وسينتقل مثيل خادم Azure Database for MySQL المرن إلى حالة لا يمكن الوصول إليها . قم بتوسيع تاريخ انتهاء صلاحية المفتاح باستخدام CLI ثم أعد التحقق من تشفير البيانات لجعل مثيل خادم Azure Database for MySQL المرن متوفرا.

إبطال الوصول إلى المفتاح العرضي من Key Vault

قد يحدث أن يقوم شخص ما لديه حقوق وصول كافية إلى Key Vault بتعطيل وصول الخادم المرن إلى المفتاح عن طريق:

  • إبطال أذونات الحصول على مخزن المفاتيح وإدراجها ومفتاح التضمين وإلغاء التضمينالمفاتيح من الخادم
  • حذف المفتاح
  • حذف مخزن المفاتيح
  • تغيير قواعد جدار الحماية في مخزن المفاتيح
  • حذف الهوية المدارة للمستخدم المستخدمة للتشفير على الخادم المرن باستخدام مفتاح مدار من قبل العميل في معرف Microsoft Entra

مراقبة المفتاح المدار من قبل العميل في Key Vault

لمراقبة حالة قاعدة البيانات وتمكين التنبيه لفقدان الوصول إلى أداة حماية تشفير البيانات الشفاف قم بتكوين ميزات Azure التالية:

  • Activity log: عند فشل الوصول إلى "مفتاح العميل" في مخزن المفاتيح المُدار بواسطة العميل، تتم إضافة الإدخالات إلى سجل النشاط. يمكنك إعادة الوصول في أقرب وقت ممكن إذا قمت بإنشاء تنبيهات لهذه الأحداث.
  • مجموعات الإجراءات: حدد هذه المجموعات لإرسال الإعلامات والتنبيهات استنادا إلى تفضيلاتك.

نسخة طبق الأصل مع مفتاح مُدار للعميل في مخزن المفاتيح

بمجرد تشفير مثيل خادم مرن ل Azure Database for MySQL باستخدام المفتاح المدار للعميل المخزن في Key Vault، يتم أيضا تشفير أي نسخة تم إنشاؤها حديثا من الخادم. عند محاولة تشفير مثيل خادم مرن لقاعدة بيانات Azure ل MySQL باستخدام مفتاح مدار من قبل العميل يحتوي بالفعل على نسخة متماثلة (نسخ متماثلة)، نوصي بتكوين النسخة المتماثلة (النسخ المتماثلة) عن طريق إضافة الهوية والمفتاح المدارين. لنفترض أن مثيل خادم Azure Database for MySQL المرن قد تم تكوينه باستخدام النسخ الاحتياطي للتكرار الجغرافي. في هذه الحالة، يجب تكوين النسخة المتماثلة بالهوية المدارة والمفتاح الذي يمكن للهوية الوصول إليه والموجودة في منطقة الخادم المقترنة جغرافيا.

يمكنك الاستعادة باستخدام مفتاح مُدار من قِبل العميل في مخزن المفاتيح

عند محاولة استعادة مثيل خادم مرن لقاعدة بيانات Azure ل MySQL، يمكنك تحديد الهوية المدارة من قبل المستخدم والمفتاح لتشفير خادم الاستعادة. لنفترض أن مثيل خادم Azure Database for MySQL المرن قد تم تكوينه باستخدام النسخ الاحتياطي للتكرار الجغرافي. في هذه الحالة، يجب تكوين خادم الاستعادة بالهوية المدارة والمفتاح الذي تتمتع الهوية بالوصول إليه والموجود في منطقة الخادم المقترنة جغرافيا.

لتجنب المشكلات أثناء إعداد تشفير البيانات المدارة من قبل العميل أثناء استعادة أو قراءة إنشاء النسخة المتماثلة، من الضروري اتباع هذه الخطوات على خوادم المصدر والنسخة المستعادة/النسخة المتماثلة:

  • بدء عملية استعادة أو قراءة إنشاء النسخة المتماثلة من قاعدة بيانات Azure المصدر لمثيل الخادم المرن MySQL.
  • على الخادم المُستعاد/النسخة المتماثلة، أعد التحقق من صحة المفتاح المُدار بواسطة العميل في إعدادات تشفير البيانات للتأكد من منح المستخدم أذونات Get و List و Wrap key و Unwrap key للمفتاح المخزن في مخزن المفاتيح.

إشعار

استخدام نفس الهوية والمفتاح كما هو الحال على الخادم المصدر ليس إلزاميا عند إجراء استعادة.

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