نظرة عامة على أمان قاعدة البيانات في Azure Cosmos DB

ينطبق على: NoSQL MongoDB كاساندرا العفريت جدول

تناقش هذه المقالة أفضل ممارسات أمان قاعدة البيانات والميزات الرئيسية التي تقدمها Azure Cosmos DB لمساعدتك في منع انتهاكات قاعدة البيانات واكتشافها والاستجابة لها.

ما الجديد في أمان Azure Cosmos DB؟

يتوفر التشفير في حالة عدم التشغيل الآن للمستندات والنسخ الاحتياطية المخزنة في Azure Cosmos DB في جميع مناطق Azure. يتم تطبيق التشفير في حالة عدم التشغيل تلقائياً لكل من العملاء الحاليين والجدد في هذه المناطق. ليست هناك حاجة لتكوين أي شيء. يمكنك الحصول على نفس زمن الانتقال الكبير ومعدل النقل والتوافر والوظائف كما كان من قبل مع الاستفادة من معرفة أن بياناتك آمنة وآمنة مع التشفير الثابت. يتم تشفير البيانات المخزنة في حساب Azure Cosmos DB تلقائيا وسلسا باستخدام مفاتيح تديرها Microsoft باستخدام مفاتيح مدارة بواسطة الخدمة. اختياريا، يمكنك اختيار إضافة طبقة ثانية من التشفير باستخدام المفاتيح التي تديرها باستخدام مفاتيح يديرها العميل أو CMK.

كيف أعمل تأمين قاعدة البيانات؟

أمان البيانات هو مسؤولية مشتركة بينك وبين العميل ومزود قاعدة بياناتك. اعتماداً على مزود قاعدة البيانات الذي تختاره، قد يختلف مقدار المسؤولية التي تتحملها. إذا اخترت حلا محليا، فأنت بحاجة إلى توفير كل شيء بدءا من حماية نقطة النهاية إلى الأمان الفعلي لأجهزتك، وهي ليست مهمة سهلة. إذا اخترت موفر قاعدة بيانات سحابية للنظام الأساسي كخدمة (PaaS)، مثل Azure Cosmos DB، فإن مجال اهتمامك يتقلص بشكل كبير. توضح الصورة التالية، المستعارة من المستند التقني المسؤوليات المشتركة للحوسبة السحابية من Microsoft، كيف تقل مسؤوليتك مع مزود PaaS مثل Azure Cosmos DB.

لقطة شاشة تعرض مسؤوليات العملاء وموفري قاعدة البيانات.

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

نوصي بقائمة التحقق التالية من المتطلبات التي يمكن من خلالها مقارنة أنظمة قواعد البيانات:

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

على الرغم من أنه قد يبدو واضحا، فإن الخروقات الأخيرة لقاعدة البيانات واسعة النطاق تذكرنا بالأهمية البسيطة والحاسمة للمتطلبات التالية:

  • الخوادم المصححة التي يتم تحديثها باستمرار
  • HTTPS افتراضياً/ تشفير TLS
  • حسابات إدارية بكلمات مرور قوية

كيف يؤمن Azure Cosmos DB قاعدة البيانات الخاصة بي؟

لنلق نظرة على القائمة السابقة. كم عدد متطلبات الأمان هذه التي يوفرها Azure Cosmos DB؟ كل واحد على حدة.

دعونا نستكشف كل واحد بالتفصيل.

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

باستخدام Azure Cosmos DB، يمكنك تمكين عنوان IP محدد (168.61.48.0)، ونطاق IP (168.61.48.0/8)، ومجموعات من عناوين IP والنطاقات.

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

يمكنك استخدام علامات خدمة الشبكة الظاهرية لتحقيق عزل الشبكة وحماية موارد Azure Cosmos DB من الإنترنت العام. استخدم علامات الخدمة بدلاً من عناوين IP معينة عند إنشاء قواعد الأمان. من خلال تحديد اسم علامة الخدمة (على سبيل المثال، AzureCosmosDB) في حقل المصدر أو الوجهة المناسب للقاعدة، يمكنك السماح بنسبة استخدام الشبكة للخدمة المقابلة أو رفضها.
التصريح يستخدم Azure Cosmos DB التعليمة البرمجية لمصادقة الرسالة المستندة إلى التجزئة (HMAC) من أجل المصادقة.

يتم تجزئة كل طلب باستخدام مفتاح الحساب السري، ويتم إرسال التجزئة المشفرة base-64 اللاحقة مع كل استدعاء إلى Azure Cosmos DB. للتحقق من صحة الطلب، يستخدم Azure Cosmos DB المفتاح السري الصحيح والخصائص لإنشاء تجزئة، ثم يقارن القيمة بالقيمة الموجودة في الطلب. إذا تطابقت القيمتان، يتم تخويل العملية بنجاح ومعالجة الطلب. إذا لم تتطابق، فهناك فشل في التخويل ويتم رفض الطلب.

يمكنك استخدام مفتاح أساسي أو رمز مميز للمورد، مما يسمح بالوصول الدقيق إلى مورد مثل مستند.

لمعرفة المزيد، راجع الوصول الآمن إلى موارد Azure Cosmos DB.
المستخدمون والأذونات باستخدام المفتاح الأساسي للحساب، يمكنك إنشاء موارد المستخدم وموارد الأذونات لكل قاعدة بيانات. يرتبط الرمز المميز للمورد بإذن في قاعدة البيانات ويحدد ما إذا كان المستخدم لديه حق الوصول (للقراءة والكتابة أو للقراءة فقط أو لا يوجد وصول) إلى مورد تطبيق في قاعدة البيانات. تتضمن موارد التطبيق حاويات ومستندات ومرفقات وإجراءات مخزنة ومشغلات وUDFs. ثم يتم استخدام رمز المورد أثناء المصادقة لتوفير أو رفض الوصول إلى المورد.

لمعرفة المزيد، راجع الوصول الآمن إلى موارد Azure Cosmos DB.
تكامل Active Directory (التحكم في الوصول المستند إلى الدور في Azure) يمكنك أيضا توفير أو تقييد الوصول إلى حساب Azure Cosmos DB وقاعدة البيانات والحاوية والعروض (معدل النقل) باستخدام التحكم في الوصول (IAM) في مدخل Microsoft Azure. يوفر IAM التحكم في الوصول المستند إلى الأدوار ويتكامل مع Active Directory. يمكنك استخدام الأدوار المضمنة أو الأدوار المخصصة للأفراد والمجموعات. لمعرفة المزيد، راجع تكامل Active Directory.
النسخ المتماثل العمومي يقدم Azure Cosmos DB توزيعا عالميا تسليم المفتاح، والذي يمكنك من نسخ بياناتك نسخا متماثلا إلى أي من مراكز البيانات العالمية في Azure بطريقة تسليم المفتاح. يتيح لك النسخ العالمي التوسع عالمياً وتوفير وصول بزمن انتقال منخفض إلى بياناتك حول العالم.

في سياق الأمن، يضمن النسخ العالمي حماية البيانات ضد حالات الفشل الإقليمية.

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

لمعرفة المزيد، راجع عمليات تجاوز الفشل الإقليمية في Azure Cosmos DB.
النسخ المتماثل المحلي حتى داخل مركز بيانات واحد، يقوم Azure Cosmos DB تلقائيا بنسخ البيانات نسخا متماثلا للحصول على قابلية وصول عالية، مما يمنحك اختيار مستويات التناسق. يضمن هذا النسخ المتماثل اتفاقية مستوى خدمة (SLA) للتوافر بنسبة 99.99% لجميع حسابات المنطقة الفردية وجميع الحسابات متعددة المناطق ذات الاتساق المريح، كما تضمن توافر القراءة بنسبة 99.999% على جميع حسابات قاعدة البيانات متعددة المناطق.
النسخ الاحتياطي الآلي عبر الإنترنت يتم نسخ قواعد بيانات Azure Cosmos DB احتياطيا بانتظام وتخزينها في مخزن متكرر جغرافيا.

لمعرفة المزيد، راجع النسخ الاحتياطي التلقائي عبر الإنترنت والاستعادة باستخدام Azure Cosmos DB.
استعادة البيانات المحذوفة يمكنك استخدام النسخ الاحتياطية التلقائية عبر الإنترنت لاسترداد البيانات التي قد تكون حذفتها عن طريق الخطأ حتى ~30 يوما بعد الحدث.

لمعرفة المزيد، راجع النسخ الاحتياطي التلقائي عبر الإنترنت والاستعادة باستخدام Azure Cosmos DB
حماية البيانات الحساسة وعزلها جميع البيانات في المناطق المدرجة الواردة في ما الجديد؟ مشفر الآن في الوضع غير النشط.

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

لمعرفة المزيد، راجع استجابة أمان Microsoft Azure في السحابة.
سياج جغرافي يضمن Azure Cosmos DB إدارة البيانات للمناطق ذات السيادة (على سبيل المثال، ألمانيا والصين وحكومة الولايات المتحدة).
مرافق محمية يتم تخزين البيانات في Azure Cosmos DB على محركات أقراص الحالة الصلبة في مراكز البيانات المحمية في Azure.

لمعرفة المزيد، راجع مراكز البيانات العمومية ل Microsoft.
تشفير HTTPS/SSL/TLS جميع الاتصالات بـ Azure Cosmos DB تدعم HTTPS. يدعم Azure Cosmos DB مستويات TLS تصل إلى 1.2 (مضمنة).
من الممكن فرض حد أدنى من مستوى TLS على جانب الخادم. للقيام بذلك، راجع دليل الخدمة الذاتية الخدمة الذاتية الحد الأدنى من فرض إصدار TLS في Azure Cosmos DB.
التشفير في حالة السكون يتم تشفير جميع البيانات المخزنة في Azure Cosmos DB في حالة الثبات. تعرف على المزيد في تشفير Azure Cosmos DB الثابتة.
الخوادم المصححة كقاعدة بيانات مدارة، يلغي Azure Cosmos DB الحاجة إلى إدارة الخوادم وتصحيحها لأنها تتم لك تلقائيا.
حسابات إدارية بكلمات مرور قوية من المستحيل أن يكون لديك حساب إداري بدون كلمة مرور في Azure Cosmos DB.

يتم خبز الأمان عبر TLS والمصادقة السرية HMAC بشكل افتراضي.
شهادات الأمان وحماية البيانات للحصول على أحدث قائمة من الشهادات، راجع توافق Azure وأحدث مستند توافق Azure مع جميع شهادات Azure، بما في ذلك Azure Cosmos DB.

توضح لقطة الشاشة التالية كيف يمكنك استخدام تسجيل التدقيق وسجلات النشاط لمراقبة حسابك. لقطة شاشة تعرض سجلات النشاط ل Azure Cosmos DB.

مفاتيح أساسية/ثانوية

توفر المفاتيح الأساسية/الثانوية الوصول إلى جميع الموارد الإدارية لحساب قاعدة البيانات. مفاتيح أساسية/ثانوية:

  • توفير الوصول إلى الحسابات وقواعد البيانات والمستخدمين والأذونات.
  • لا يمكن استخدامها لتوفير وصول متعدد المستويات إلى الحاويات والمستندات.
  • يتم إنشاؤها أثناء إنشاء الحساب.
  • يمكن تجديدها في أي وقت.

يتكون كل حساب من مفتاحين: مفتاح أساسي ومفتاح ثانوي. الغرض من المفاتيح المزدوجة هو بحيث يمكنك إعادة إنشاء المفاتيح أو لفها، وتوفير الوصول المستمر إلى حسابك وبياناتك.

تأتي المفاتيح الأساسية/الثانوية في إصدارين: للقراءة والكتابة والقراءة فقط. تسمح مفاتيح القراءة فقط بعمليات القراءة على الحساب فقط. لا توفر الوصول إلى موارد أذونات القراءة.

تدوير المفتاح وتجديده

عملية تدوير المفتاح وتجديده بسيطة. أولاً، تأكد أن تطبيقك يستخدم باستمرار إما المفتاح الأساسي أو المفتاح الثانوي للوصول إلى حساب Azure Cosmos DB الخاص بك. ثم اتبع الخطوات الواردة في القسم التالي. لمراقبة حسابك للحصول على التحديثات الرئيسية وإعادة إنشاء المفاتيح، راجع مراقبة التحديثات الرئيسية باستخدام المقاييس والتنبيهات.

إذا كان تطبيقك يستخدم حالياً المفتاح الأساسي

  1. انتقل إلى حساب Azure Cosmos DB في مدخل Microsoft Azure.

  2. حدد Keys من القائمة اليسرى، ثم حدد Regenerate Secondary Key من علامة الحذف (...) على يمين المفتاح الثانوي.

    لقطة شاشة توضح كيفية إعادة إنشاء المفتاح الثانوي في مدخل Microsoft Azure عند استخدامه مع واجهة برمجة تطبيقات NoSQL.

  3. تحقق أن المفتاح الثانوي الجديد يعمل باستمرار وفق حساب Azure Cosmos DB الخاص بك. يمكن أن يستغرق إعادة إنشاء المفتاح في أي مكان من دقيقة واحدة إلى عدة ساعات اعتمادا على حجم حساب Azure Cosmos DB.

  4. استبدل مفتاحك الأساسي بالمفتاح الثانوي في تطبيقك.

  5. ارجع إلى مدخل Azure وشغّل إعادة إنشاء المفتاح الأساسي.

    لقطة شاشة توضح كيفية إعادة إنشاء المفتاح الأساسي في مدخل Microsoft Azure عند استخدامه مع NoSQL API.

إذا كان تطبيقك يستخدم حالياً المفتاح الثانوي

  1. انتقل إلى حساب Azure Cosmos DB في مدخل Microsoft Azure.

  2. حدد Keys من القائمة اليسرى، ثم حدد Regenerate Primary Key من علامة الحذف (...) على يمين المفتاح الأساسي.

    لقطة شاشة توضح كيفية إعادة إنشاء المفتاح الأساسي في مدخل Microsoft Azure عند استخدامه مع واجهة برمجة تطبيقات NoSQL.

  3. تحقق من أن المفتاح الأساسي الجديد يعمل باستمرار وفق حساب Azure Cosmos DB الخاص بك. يمكن أن يستغرق إعادة إنشاء المفتاح في أي مكان من دقيقة واحدة إلى عدة ساعات اعتمادا على حجم حساب Azure Cosmos DB.

  4. استبدل مفتاحك الثانوي بالمفتاح الأساسي في تطبيقك.

  5. ارجع إلى مدخل Azure وشغّل إعادة إنشاء المفتاح الثانوي.

    لقطة شاشة توضح كيفية إعادة إنشاء المفتاح الثانوي في مدخل Microsoft Azure عند استخدامه مع واجهة برمجة تطبيقات NoSQL.

تتبع حالة تجديد المفتاح

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

  1. سجل الدخول إلى مدخل Microsoft Azure وانتقل إلى حساب Azure Cosmos DB الخاص بك.

  2. حدد Keys من القائمة اليسرى. يجب أن تشاهد تاريخ إعادة إنشاء المفتاح الأخير أسفل كل مفتاح.

    لقطة شاشة تعرض حالة إعادة إنشاء المفتاح من سجل النشاط.

    نوصي بإعادة إنشاء المفاتيح مرة واحدة على الأقل كل 60 يوما. إذا كان آخر تجديد لك منذ أكثر من 60 يوما، فسترى أيقونة تحذير. أيضا، يمكنك أن ترى أن مفتاحك لم يتم تسجيله. إذا كان الأمر كذلك، فقد تم إنشاء حسابك قبل 18 يونيو 2022، ولم يتم تسجيل التواريخ. ومع ذلك، يجب أن تكون قادرا على إعادة إنشاء ورؤية تاريخ التجديد الأخير الجديد للمفتاح الجديد.

  3. يجب أن تشاهد أحداث إعادة إنشاء المفتاح جنبا إلى جنب مع حالتها، والوقت الذي تم فيه إصدار العملية، وتفاصيل المستخدم الذي بدأ إعادة إنشاء المفتاح. تبدأ عملية إنشاء المفتاح بالحالة Accepted . يتغير إلى Started ثم إلى Succeeded عند انتهاء العملية.

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