تنفيذ تشفير البيانات الشفافة
يساعد تشفير البيانات الشفاف (TDE) في حماية قاعدة بيانات Azure SQL ومثيل Azure SQL المدار SQL Synapse في Azure Synapse Analytics من خطر النشاط غير المتصل بالإنترنت عن طريق تشفير البيانات في حالة الراحة. فإنه ينفذ تشفير في الوقت الحقيقي وفك تشفير لقاعدة البيانات والنسخ الاحتياطية المقترنة وملفات سجل المعاملات الثابتة دون الحاجة إلى تغييرات على التطبيق. بشكل افتراضي، تمكن TDE جميع قواعد بيانات SQL Azure المنشورة حديثاً وتحتاج إلى تمكين يدوي لقواعد البيانات القديمة من قاعدة بيانات azure SQL أو Azure SQL المثيل المدار أو Azure Synapse.
TDE ينفذ في الوقت الحقيقي الإدخال / إخراج التشفير وفك تشفير البيانات على مستوى الصفحة. يتم فك تشفير كل صفحة عند قراءتها في الذاكرة ثم تشفيرها قبل كتابتها على القرص. TDE تشفير تخزين قاعدة بيانات بأكملها باستخدام مفتاح متماثل يسمى Database Encryption Key (DEK). عند بدء تشغيل قاعدة البيانات، يتم فك تشفير DEK المشفرة ثم استخدامها لفك وإعادة تشفير ملفات قاعدة البيانات في عملية SQL Server Database Engine. DEK محمي من قبل حامي TDE. حامي TDE عبارة عن شهادة مُدارة بواسطة الخدمة (خدمة تشفير بيانات شفاف مُدارة) أو مفتاح غير متماثل مخزن في Azure Key Vault (تشفير بيانات شفاف مُدار بواسطة العميل).
بالنسبة Azure SQL Database وAzure Synapse، يتم تعيين حامي TDE على مستوى الخادم المنطقي SQL ويتم توريثه من قبل جميع قواعد البيانات المقترنة بذلك الخادم. بالنسبة إلى Azure SQL Managed Instance (ميزة BYOK في المعاينة)، يتم تعيين حامي TDE على مستوى المثيل ويتم توريثه من قبل جميع قواعد البيانات المشفرة على هذا المثيل. يشير مصطلح الخادم إلى كل من الخادم والمثيل في جميع أنحاء هذه الوثيقة، ما لم يذكر بشكل مختلف.
يتم تشفير جميع قواعد بيانات SQL التي تم إنشاؤها حديثا بشكل افتراضي باستخدام تشفير البيانات الشفافة المدارة بواسطة الخدمة. عند تشفير مصدر قاعدة البيانات، يتم تشفير قواعد البيانات الهدف التي تم إنشاؤها من خلال الاستعادة والنسخ المتماثل الجغرافي ونسخ قاعدة البيانات بشكل افتراضي. ومع ذلك، عندما لا يتم تشفير مصدر قاعدة البيانات، لا يتم تشفير قواعد البيانات الهدف التي تم إنشاؤها من خلال الاستعادة والنسخ المتماثل الجغرافي ونسخ قاعدة البيانات بشكل افتراضي. لا يتم تشفير قواعد بيانات SQL الموجودة التي تم إنشاؤها قبل مايو 2017 وقواعد بيانات مثيل SQL المدار الموجودة التي تم إنشاؤها قبل فبراير 2019 بشكل افتراضي. ترث قواعد بيانات مثيل SQL المُدار التي تم إنشاؤها من خلال استعادة حالة التشفير من المصدر. لاستعادة قاعدة بيانات TDE مشفرة موجودة، يجب أولاً استيراد شهادة TDE المطلوبة إلى مثيل SQL المُدار. لمعرفة حالة التشفير لقاعدة بيانات، قم بتنفيذ استعلام تحديد من sys.dm_database_encryption_keys DMV وتحقق من encryption_state_desc حالة العمود.
لا يمكن استخدام TDE لتشفير قواعد بيانات النظام، مثل master قاعدة البيانات، في قاعدة بيانات SQL ومثيل SQL المدار. تحتوي قاعدة البيانات الرئيسية على كائنات مطلوبة لتنفيذ عمليات TDE على قواعد بيانات المستخدم. يوصى بعدم تخزين أي بيانات حساسة في قواعد بيانات النظام. الاستثناء هو tempdb، الذي يتم تشفيره دائما باستخدام TDE لحماية البيانات المخزنة هناك.
تشفير البيانات الشفافة الذي تديره الخدمة
في Azure، الإعداد الافتراضي لـ TDE هو أن DEK محمي بواسطة شهادة خادم مضمن. شهادة الخادم المضمنة فريدة لكل خادم وخوارزمية التشفير المستخدمة هي AES 256. إذا كانت قاعدة بيانات في علاقة النسخ المتماثل الجغرافية، فيتم حماية كل من قواعد البيانات الأساسية والثانوية الجغرافية بواسطة مفتاح الخادم الأصل لقاعدة البيانات الأساسية. إذا كانت قاعدتا البيانات متصلتين بنفس الخادم، فإنهما تشتركان أيضاً في نفس الشهادة المضمنة. تقوم Microsoft تلقائياً بتدوير هذه الشهادات وفقاً لسياسة الأمان الداخلي، كما تتم حماية المفتاح الجذر من قبل مخزن سري داخلي لـ Microsoft. يمكن للعملاء التحقق من امتثال SQL Database مع نهج الأمان الداخلي في تقارير تدقيق الجهات الخارجية المستقلة المتوفرة على Microsoft Trust Center.
كما تقوم Microsoft بنقل المفاتيح وإدارتها بسهولة حسب الحاجة للنسخ المتماثل الجغرافي والاستعادة.
تشفير البيانات الشفاف الذي يديره العميل -Bring Your Own Key
كما يُشار إلى هذا بمصطلح دعم إنشاء مفتاحك (BYOK) لـTDE. في هذا السيناريو، يكون TDE Protector الذي يقوم بتشفير DEK مفتاحاً غير متماثل يديره العميل، ويتم تخزينه في مخزن مفتاح Azure المملوك والمدار للعميل (نظام إدارة المفاتيح الخارجي المستند إلى السحابة من Azure) ولا يترك مخزن المفاتيح أبداً. يمكن إنشاء TDE Protector بواسطة خزنة المفاتيح أو نقلها إلى مخزن المفتاح من جهاز وحدة أمان الأجهزة (HSM) في أماكن العمل. يجب منح Azure Synapse Analytics أذونات إلى المخزن الرئيسي الذي يملكه العميل من أجل فك وتشفير DEK . إذا تم إبطال أذونات الخادم SQL المنطقي إلى مخزن المفتاح، فلن يكون من الممكن الوصول إلى قاعدة بيانات، ويتم تشفير جميع البيانات
مع TDE مع تكامل Azure Key Vault، يمكن للمستخدمين التحكم في مهام الإدارة الرئيسية بما في ذلك تناوب المفاتيح وأذونات الخزنة الرئيسية والنسخ الاحتياطية الرئيسية وتمكين التدقيق / الإبلاغ عن جميع حماة TDE باستخدام وظائف Azure Key Vault. يوفر Key Vault إدارة المفتاح المركزي، ويستفيد من HSMs المراقبة بإحكام، ويمكن من فصل الواجبات بين إدارة المفاتيح والبيانات للمساعدة في تلبية الامتثال لسياسات الأمان.
نقل قاعدة بيانات محمية بتشفير البيانات الشفاف
لا تحتاج إلى فك تشفير قواعد البيانات للعمليات داخل Azure. يتم توريث إعدادات TDE في قاعدة البيانات المصدر أو قاعدة البيانات الأولية بشفافية على الهدف. تتضمن العمليات المضمنة ما يلي:
- الاستعادة الجغرافية
- الاستعادة في نقطة زمنية ذاتية الخدمة
- استعادة قاعدة بيانات محذوفة
- النسخ الجغرافي النشط
- إنشاء نسخة من قاعدة بيانات
- استعادة ملف النسخ الاحتياطي إلى مثيل Azure SQL المُدار
لا يتم دعم النسخ الاحتياطي اليدوي للنسخة فقط لقاعدة البيانات المشفرة بواسطة خدمة TDE المُدار في مثيل Azure SQL المُدار حيث لا يمكن الوصول إلى الشهادة المستخدمة للتشفير. في مثل هذه الحالة، استخدم ميزة الاستعادة إلي نقطة معينة من الوقت لنقل هذا النوع من قاعدة البيانات إلى مثيل SQL المُدار الآخر، أو التبديل إلى المفتاح المُدار بواسطة العميل.
وعند تصدير قاعدة بيانات محمية بواسطة TDE، لا يتم تشفير المحتوى المُصدّر من قاعدة البيانات. يتم تخزين هذا المحتوى المُصدّر في ملفات BACPAC غير المشفرة. تأكد من حماية ملفات BACPAC بشكل مناسب وتمكين TDE بعد انتهاء استيراد قاعدة البيانات الجديدة.
على سبيل المثال، إذا تم تصدير الملف BACPAC من مثيل SQL Server، لا يتم تشفير المحتوى المستورد لقاعدة البيانات الجديدة تلقائيًا. وبالمثل، إذا تم استيراد ملف BACPAC إلى مثيل SQL Server، لا تكون قاعدة البيانات الجديدة مشفرة تلقائيًا.
الاستثناء الوحيد هو عند تصدير قاعدة بيانات من وإلى نفس قاعدة بيانات SQL. يتم تمكين TDE على قاعدة البيانات الجديدة، ولكن ملف BACPAC نفسه لا يزال غير مشفر.
إدارة تشفير البيانات الشفاف
إدارة TDE في مدخل Microsoft Azure.
لتكوين TDE من خلال مدخل Microsoft Azure، يجب أن تكون متصلاً بمالك Azure أو المساهم أوSQL Security Manager.
قم بتمكين TDE على مستوى قاعدة البيانات أو تعطيله. بالنسبة لمثيل Azure SQL المُدار، استخدم Transact-SQL (T-SQL) لتشغيل TDE على قاعدة بيانات أو إيقاف تشغيله. بالنسبة لقاعدة بيانات Azure SQL وAzure Synapse، يمكنك إدارة TDE لقاعدة البيانات في مدخل Microsoft Azure بعد تسجيل الدخول باستخدام حساب مسؤول Azure أو حساب المساهم. البحث عن إعدادات TDE ضمن قاعدة بيانات المستخدم. بشكل افتراضي، يتم استخدام مفتاح التشفير على مستوى الخادم. يتم إنشاء شهادة TDE تلقائياً للخادم الذي يحتوي على قاعدة البيانات.
تقوم بتعيين المفتاح الرئيسي TDE، والمعروفة باسم حامي TDE، على مستوى الخادم أو المثيل. لاستخدام TDE مع دعم BYOK وحماية قواعد البيانات الخاصة بك باستخدام مفتاح من Azure Key Vault، افتح إعدادات TDE ضمن الخادم أو المثيل المدار.
يمكنك أيضا استخدام مفتاح مدار من قبل العميل ل TDE على مستوى قاعدة بيانات لقاعدة بيانات Azure SQL.