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

ينطبق على: قاعدة بيانات Azure لـ PostgreSQL - خادم واحد

هام

قاعدة بيانات Azure ل PostgreSQL - خادم واحد على مسار التقاعد. نوصي بشدة بالترقية إلى Azure Database for PostgreSQL - Flexible Server. لمزيد من المعلومات حول الترحيل إلى قاعدة بيانات Azure ل PostgreSQL - خادم مرن، راجع ما يحدث لقاعدة بيانات Azure لخادم PostgreSQL الفردي؟.

يستفيد Azure PostgreSQL من تشفير موقع تخزين Azure لتشفير البيانات الثابتة افتراضيا باستخدام المفاتيح التي تديرها Microsoft. وبالنسبة لمستخدمي Azure PostgreSQL، فهو مشابه جدا لتشفير البيانات الشفاف (TDE) في قواعد بيانات أخرى مثل SQL Server. تتطلب العديد من المؤسسات التحكم الكامل في الوصول إلى البيانات باستخدام مفتاح مدار من خلال العميل. تمكنك قاعدة بيانات Azure لتشفير بيانات خادم PostgreSQL الفردي باستخدام مفتاح مدار من خلال العميل من إحضار المفتاح الخاص بك (BYOK) لتتمكن من حماية البيانات الثابتة. كما تمنح المؤسسات القدرة على تنفيذ الفصل بين الواجبات في إدارة المفاتيح والبيانات. وتصبح، من خلال التشفير المُدار بواسطة العميل، مسؤولاً عن إدارة دورة حياة المفتاح والتحكم الكامل فيها وأذونات استخدام المفاتيح، وتدقيق العمليات على المفاتيح.

تعيين تشفير البيانات باستخدام مفاتيح يديرها العميل لقاعدة بيانات Azure لخادم PostgreSQL الفردي على مستوى الخادم. وفيما يخص خادم معين، يتم استخدام مفتاح مدار من قبل العميل، يسمى مفتاح تشفير المفتاح (KEK)، لتشفير مفتاح تشفير البيانات (DEK) الذي تستخدمه الخدمة. KEK هو مفتاح غير متماثل مخزن في مثيل Azure Key Vault المملوك للعميل والمدار من قبل العميل. يوصف مفتاح تشفير المفتاح (KEK) ومفتاح تشفير البيانات (DEK) بمزيد من التفصيل لاحقاً في هذه المقالة.

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

إشعار

تتوفر هذه الميزة في جميع مناطق Azure حيث تدعم قاعدة بيانات Azure لـ MySQL بخادم فردي مستويات التسعير «للأغراض العامة والذاكرة المحسنة». للحصول على قيود أخرى، يرجى مراجعة قسم التقييدات.

المزايا

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

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

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

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

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

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

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

رسم تخطيطي يوضح نظرة عامة على إنشاء مفتاحك الخاص

لكي يستخدم خادم PostgreSQL المفاتيح التي يديرها العميل المخزنة في Key Vault لتشفير مفتاح تشفير، يمنح مسؤول Key Vault حقوق الوصول التالية إلى الخادم:

  • get - لاسترداد الجزء العام وخصائص المفتاح في المخزن الرئيسي.
  • wrapKey: لتكون قادراً على تشفير مفتاح التشفير. يتم تخزين مفاتيح التشفير المشفرة في قاعدة بيانات Azure ل PostgreSQL.
  • unwrapKey: لتكون قادراً على فك تشفير مفتاح التشفير. تحتاج قاعدة بيانات Azure ل PostgreSQL إلى مفتاح التشفير الذي تم فك تشفيره لتشفير/فك تشفير البيانات

يمكن لمسؤول key vault كذلك تمكين تسجيل أحداث تدقيق Key Vault، بحيث يمكن تدقيقها لاحقاً.

عند تكوين الخادم لاستخدام المفتاح المدار من قبل العميل المخزن في Key Vault، يرسل الخادم مفتاح التشفير إلى Key Vault للتشفير. تقوم Key Vault بإرجاع مفتاح التشفير المشفر، والذي يتم تخزينه بعد ذلك في قاعدة بيانات المستخدم. وبالمثل، عند الحاجة، يرسل الخادم مفتاح التشفير المحمي إلى key vault لفك التشفير. يمكن للمدققين استخدام Azure Monitor لمراجعة سجلات AuditEvent الخاصة بـ key vault، في حالة تمكين التسجيل.

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

فيما يلي متطلبات تكوين Key Vault:

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

فيما يلي متطلبات تكوين المفتاح المدار من قبل العميل:

  • يمكن أن يكون المفتاح الذي يديره العميل لاستخدامه لتشفير مفتاح التشفير غير متماثل فقط، RSA 2048.
  • يجب أن يكون تاريخ تنشيط المفتاح (إذا تم تعيينه) تاريخاً ووقتاً في الماضي. يجب أن يكون تاريخ انتهاء الصلاحية (إن تم تعيينه) تاريخاً ووقتاً في المستقبل.
  • يجب أن يكون المفتاح في الحالة ممكّن.
  • إن كنت تستورد مفتاحاً موجوداً في مخزن المفاتيح، فتأكد من توفيره بتنسيقات الملفات المدعومة (.pfxأو .byokأو .backup).

التوصيات

في حال استخدام تشفير البيانات باستخدام مفتاح يديره العميل، فيما يلي توصيات لتكوين Key Vault:

  • قم بتعيين تأمين مورد على Key Vault للتحكم في من يمكنه حذف هذا المورد الهام ومنع الحذف العرضي أو غير المصرح به.

  • تمكين التدقيق وإعداد التقارير على جميع مفاتيح التشفير. توفر Key Vault سجلات يسهل إدخالها في معلومات الأمان وأدوات إدارة الأحداث الأخرى. تحليلات سجلات Azure Monitor هي أحد الأمثلة على خدمة متكاملة بالفعل.

  • تأكد من وجود Key Vault وقاعدة بيانات Azure لخادم PostgreSQL الفردي في نفس المنطقة، لضمان وصول أسرع لمفاتيح التشفير wrap وعمليات Unwrap.

  • تأمين Azure KeyVault إلى نقطة النهاية الخاصة والشبكات المحددة فقط والسماح لخدمات Microsoft الموثوق بها بتأمين الموارد.

    خدمة موثوق بها باستخدام AKV

فيما يلي توصيات لتكوين مفتاح مدار من خلال العميل:

  • احتفظ بنسخة من أداة حماية المفتاح المدار من خلال العميل في مكان آمن أو احفظها في خدمة الضمان.

  • في حال إنشاء المفتاح في Key Vault، فقم بإنشاء نسخة احتياطية للمفتاح قبل استخدام المفتاح للمرة الأولى. يمكنك فقط استعادة النسخ الاحتياطي إلى Key Vault. لمزيد من المعلومات حول أمر النسخ الاحتياطي، يرجى مراجعةBackup-AzKeyVaultKey.

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

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

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

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

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

  • إبطال حصول Key Vault على أذونات get وwrapKey وunwrapKey من الخادم.

  • حذف المفتاح.

  • حذف key vault.

  • تغيير قواعد جدار حماية في key vault.

  • حذف الهوية المدارة للخادم في معرف Microsoft Entra.

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

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

  • Azure Resource Health: تظهر قاعدة البيانات التي يتعذر الوصول إليها والتي فقدت الوصول إلى مفتاح العميل على أنها "يتعذر الوصول إليها" بعد رفض الاتصال الأول بقاعدة البيانات.

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

  • Action groups: حدد هذه المجموعات لإرسال إخطارات وتنبيهات إليك استناداً إلى تفضيلاتك.

الاستعادة والنسخ المتماثل باستخدام المفتاح المدار للعميل في Key Vault

بعد تشفير قاعدة البيانات الخاصة بـ Azure لخادم PostgreSQL الأحادي باستخدام المفتاح المُدار للعميل المخزن في Key Vault، يتم أيضاً تشفير أي نسخة تم إنشاؤها حديثاً من الخادم. يمكنك إنشاء هذه النسخة الجديدة إما من خلال عملية استعادة محلية أو جغرافية، أو من خلال قراءة النسخ المتماثلة. ومع ذلك، يمكن تغيير النسخة لتعكس مفتاح العميل الجديد المدار للتشفير. تبدأ النسخ الاحتياطية القديمة للخادم باستخدام أحدث مفتاح، عند تغيير المفتاح المدار من قبل العميل.

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

  • بدء عملية استعادة أو قراءة إنشاء النسخة المتماثلة من قاعدة بيانات Azure الأساسية لخادم PostgreSQL الفردي.
  • احتفظ بالخادم الذي تم إنشاؤه حديثاً (استعادة/نسخة متماثلة) في حالة يتعذر الوصول إليها، لأن هويته الفريدة لم تمنح بعد الأذونات لـKey Vault.
  • على الخادم المستعادة/النسخة المتماثلة، أعد تقييم المفتاح المدار من قبل العميل في إعدادات تشفير البيانات. يضمن ذلك منح الخادم الذي تم إنشاؤه حديثا أذونات wrap وunwrap للمفتاح المخزن في Key Vault.

القيود

بالنسبة لقاعدة بيانات Azure ل PostgreSQL، فإن دعم تشفير البيانات الثابتة باستخدام المفتاح المدار للعملاء (CMK) يتميز بقيود قليلة -

  • يقتصر دعم هذه الوظيفة على مستويات التسعير للأغراض العامة و الذاكرة المحسنة.

  • هذه الميزة مدعومة فقط في المناطق والخوادم التي تدعم التخزين حتى 16 تيرابايت. للحصول على قائمة مناطق Azure التي تدعم التخزين حتى 16 تيرابايت، يرجى مراجعة قسم التخزين في الوثائق هنا

    إشعار

    • يتوفر دعم التشفير باستخدام مفاتيح مدير العملاء لجميع خوادم PostgreSQL الجديدة التي تم إنشاؤها في المناطق المذكورة أعلاه. لن يتأهل خادم Point In Time Restored (PITR) أو قراءة النسخة المتماثلة على الرغم من أنها "جديدة" من الناحية النظرية.
    • للتحقق من أن الخادم المقدم يدعم ما يصل إلى 16 تيرابايت، يمكنك الانتقال إلى الجزء الخاص بمستوى التسعير في المدخل ورؤية الحد الأقصى لحجم التخزين الذي يدعمه الخادم المقدم. إن كان بإمكانك نقل شريط التمرير إلى 4 تيرابايت، فقد لا يدعم الخادم التشفير باستخدام المفاتيح التي يديرها العميل. ومع ذلك، يتم تشفير البيانات باستخدام مفاتيح مدارة من خلال الخدمة في جميع الأوقات. يرجى التواصل مع AskAzureDBforPostgreSQL@service.microsoft.com إن كانت لديك أي أسئلة.
  • التشفير مدعوم فقط مع مفتاح التشفير RSA 2048.

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

تعرف على طريقةإعداد تشفير البيانات باستخدام مفتاح مدار من قبل العميل لقاعدة بيانات Azure لخادم PostgreSQL الفردي باستخدام مدخل Microsoft Azure.