تكوين ميزات الشبكات والأمان

مكتمل

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

الشبكات

تكوين الوصول إلى الشبكة

عند إنشاء خادم MySQL مرن، يمكنك تحديد إما وصول خاص من خلال شبكة Azure الظاهرية أو الوصول العام لعناوين IP المدرجة بالسماح بنقطة نهاية خاصة اختيارية. بعد إكمال قسم الأساسيات ، حدد التالي: الشبكات، ثم حدد إما الوصول العام ونقطة النهاية الخاصة أو الوصول الخاص:

لقطة شاشة لاختيار اتصال الشبكة بين الوصول العام والخاص.

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

لقطة شاشة لاختيار اتصال الشبكة للوصول العام، وقائمة بقواعد جدار الحماية.

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

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

لقطة شاشة لإعدادات الشبكة الظاهرية، بما في ذلك الاشتراك والشبكة الظاهرية والشبكة الفرعية.

وأخيرا، تحتاج إلى إعداد تكامل DNS الخاص للاتصال باسم مجال مؤهل بالكامل بدلا من عنوان IP، والذي قد يتغير. حدد منطقة DNS موجودة، أو اسمح ل Azure بإنشاء منطقة جديدة لك.

لقطة شاشة لتكوين تكامل DNS الخاص.

تكوين التشفير المتنقل

بشكل افتراضي، تقبل الخوادم المرنة MySQL الاتصالات المشفرة فقط باستخدام TLS (أمان طبقة النقل) الإصدار 1.2. إذا كنت تقوم بتطوير تطبيقات جديدة تدعم TLS 1.3، فمن المستحسن دعم الإصدار الأحدث أو حتى فرضه. للقيام بذلك، نفذ الخطوات التالية:

  1. في مدخل Microsoft Azure، حدد خادم MySQL المرن الذي تريد الاتصال به باستخدام TLS 1.3.
  2. في قسم Server parameters ، أدخل tls_version في شريط البحث في عوامل التصفية Top أو All .
  3. في القائمة المنسدلة VALUE ، حدد TLSv1.2 و/أو TLSv1.3، ثم حدد حفظ. لقطة شاشة ل server-parameters-tls-version.

يمكنك أيضا السماح بالاتصالات غير المشفرة عن طريق تعيين قيمة المعلمة require_secure_transport إلى إيقاف التشغيل، على الرغم من أن هذا غير مستحسن ما لم يكن ذلك ضروريا تماما.

Microsoft Defender للسحابة

يعد Microsoft Defender for Cloud طريقة فعالة من حيث التكلفة للكشف عن نشاط قاعدة البيانات الشاذ أو المشبوه والتنبيه إليه. لتمكينه، قم بتنفيذ الخطوات التالية:

  1. في مدخل Microsoft Azure، حدد خادم MySQL المرن الذي تريد حمايته باستخدام Defender.

  2. في قسم Microsoft Defender for Cloud ، حدد Enable.

لقطة شاشة لهذه التحديدات لتمكين Microsoft Defender for Cloud.

لمعرفة المزيد حول Defender، بما في ذلك كيفية تكوين التنبيهات، راجع الوثائق المرجعية.

تمكين الاتصال باستخدام مصادقة معرف Microsoft Entra

قبل البدء، تحتاج إلى هوية مدارة من قبل المستخدم (UMI) تم تكوينها بشكل مناسب. تحتاج الهوية إلى دور "قراء الدليل"، أو هذه الأذونات الفردية: User.Read.All وGroupMember.Read.All وApplication.Read.ALL. لمزيد من المعلومات حول كيفية إضافة هذه الأذونات، راجع هذا البرنامج التعليمي.

لتمكين مصادقة معرف Microsoft Entra لخادم مرن لقاعدة بيانات Azure ل MySQL، قم بتنفيذ الخطوات التالية:

  1. في مدخل Microsoft Azure، حدد خادم MySQL المرن الذي تريد الاتصال به باستخدام معرف Microsoft Entra.

  2. في قسم Security ، حدد Authentication.

    لقطة شاشة لتكوين معرف Microsoft Entra.

  3. ضمن العنوان تعيين الوصول إلى، حدد إما: مصادقة Microsoft Entra فقط (يعطل تسجيل دخول مستخدم MySQL الأصلي/كلمة المرور) أو مصادقة MySQL وMicrosoft Entra (يسمح بتسجيل الدخول الأصلي إلى MySQL وMicrosoft Entra).

  4. ضمن العنوان Select Identity، حدد UMI المذكور سابقا في هذه الوحدة.

  5. حدد مستخدم Microsoft Entra أو مجموعة ليكون مسؤول Microsoft Entra. إذا قمت بتحديد مجموعة، فإن جميع أعضاء المجموعة هم المسؤولون. يمكنك الحصول على مستخدم أو مجموعة مسؤول واحد فقط، ويحل تحديد آخر محل المسؤول السابق.

    مع تمكين معرف Microsoft Entra، يمكنك الآن الاتصال بالخادم المرن MySQL باستخدام مصادقة معرف Microsoft Entra عن طريق تنفيذ الخطوات التالية.

  6. مصادقة shell باستخدام Azure. إذا كنت تستخدم Azure Cloud Shell، يتم تكوين هويتك بالفعل في الجلسة، لذلك ليست هناك حاجة لتسجيل الدخول. إذا كنت تستخدم محطة طرفية غير مصادق عليها، فقم بتشغيل الأوامر التالية:

    az login
    az account set --subscription <subscription_id>
    
  7. في shell مصادق عليه، قم بتشغيل الأمر التالي لاسترداد رمز مميز للوصول:

    az account get-access-token --resource-type oss-rdbms

  8. لتسجيل الدخول، انسخ رمز الوصول المميز المقدم واستخدمه ككلمة مرور. لتمرير الرمز المميز للوصول إلى عميل mysql مباشرة، على Linux، قم بتشغيل الأمر التالي:

    mysql -h mydb.mysql.database.azure.com \
     --user user@tenant.onmicrosoft.com \
     --enable-cleartext-plugin \
     --password=`az account get-access-token --resource-type oss-rdbms --output tsv --query accessToken`
    

    إذا كنت تستخدم PowerShell، فقم بتشغيل الأمر التالي:

    mysql -h mydb.mysql.database.azure.com \
     --user user@tenant.onmicrosoft.com \
     --enable-cleartext-plugin \
     --password=$(az account get-access-token --resource-type oss-rdbms --output tsv --query accessToken)
    

    عند استخدام عملاء آخرين مثل MySQL Workbench، ما عليك سوى لصق رمز الوصول المميز في حقل كلمة المرور.

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

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

  • الهوية المدارة من قبل المستخدم (UMI). تحتاج إلى UMI لقاعدة البيانات للوصول إلى مخزن المفاتيح.

  • الأذونات. قم بإعداد إما الوصول المستند إلى الدور (IAM) أو نهج الوصول إلى المخزن، وامنح الأذونات التالية إلى UMI: Get و List و Wrap key و Unwrap key.

  • تمكين [soft-delete](/azure/key-vault/general/soft-delete-overview" /l "soft-delete-behavior). قد يؤدي فقدان الوصول إلى مفتاح التشفير عن طريق الخطأ إلى فقدان البيانات بشكل دائم. تمكين الحذف المبدئي كطبقة من الحماية. عند استخدام مدخل Microsoft Azure لإنشاء مخزن مفاتيح جديد، يتم تمكين الحذف المبدئي بشكل افتراضي.

    إذا كنت تعرف اسم المخزن ولكن ليس المعرف، يمكنك البحث عنه عن طريق تشغيل:

    az keyvault show --name $KEY_VAULT_NAME
    

    لتمكين الحذف المبدئي على مخزن موجود، قم بتشغيل:

    az resource update --id $KEY_VAULT_ID --set properties.enableSoftDelete=true
    
  • تمكين الحماية من التطهير. لا يزال من الممكن إزالة المفتاح المحذوف بشكل غير صحيح قبل نهاية فترة الاستبقاء بسبب خطأ في المستخدم أو التعليمات البرمجية. يؤدي استخدام الحماية من الإزالة إلى تعيين فترة استبقاء للعناصر المحذوفة قبل إزالتها نهائيا.

يمكنك الآن استخدام مدخل Azure أو Azure CLI لتكوين المفتاح المدار من قبل العميل لتشفير البيانات الثابتة.

إذا كنت تستخدم مدخل Microsoft Azure:

  1. انتقل إلى مثيل الخادم المرن، ثم ضمن الأمان، حدد تشفير البيانات.

    لقطة شاشة لصفحة الإعدادات لتحديد مفتاح مدار من قبل العميل.

  2. ضمن تشفير البيانات، حدد + تحديد. في مربع الحوار تحديد الهوية المدارة المعينة من قبل المستخدم، حدد الهوية المدارة المعينة من قبل المستخدم المحددة في المتطلبات الأساسية، وحدد الهوية، ثم حدد إضافة.

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

  3. بعد ذلك، حدد إدخال معرف مفتاح وأدخل المعرف، أو في مربع الحوار تحديدمفتاح ، حدد المفتاح عن طريق تحديد المعرف أو عن طريق تحديد مخزن مفاتيح ومفتاح.

  4. حدد حفظ.

إذا كنت تستخدم Azure CLI، فقم بتشغيل الأمر التالي:

az mysql flexible-server update --resource-group $RESOURCE_GROUP --name $TEST_SERVER --key $KEY_IDENTIFIER --identity $IDENTITY