مفاهيم الاتصال والشبكات لـ Azure Database for MySQL - Flexible Server

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

تقدم هذه المقالة المفاهيم للتحكم في الاتصال بمثيل Azure Database for MySQL Flexible Server. تتعلم بالتفصيل مفاهيم الشبكات لقاعدة بيانات Azure لخادم MySQL المرن لإنشاء خادم والوصول إليه بأمان في Azure.

تدعم قاعدة بيانات Azure لخادم MySQL المرن ثلاث طرق لتكوين الاتصال بخوادمك:

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

  • نقطة النهاية الخاصة يمكنك استخدام نقاط النهاية الخاصة للسماح للمضيفين على شبكة ظاهرية VNet بالوصول إلى البيانات بأمان عبر ارتباط خاص.

  • الوصول الخاص (تكامل VNet) يمكنك نشر الخادم المرن في شبكة Azure الظاهرية. تساعد شبكات Azure الظاهرية على توفير اتصال شبكة خاص وآمن. يمكن للموارد في شبكة ظاهرية الاتصال من خلال عناوين IP الخاصة.

إشعار

بعد نشر خادم مع وصول عام أو خاص (عبر تكامل VNet)، لا يمكنك تعديل وضع الاتصال. ولكن في وضع الوصول العام، يمكنك تمكين نقاط النهاية الخاصة أو تعطيلها كما هو مطلوب وأيضا تعطيل الوصول العام إذا لزم الأمر.

اختيار خيار الشبكات

اختر الوصول العام (عناوين IP المسموح بها) وطريقة نقطة النهاية الخاصة إذا كنت تريد الإمكانات التالية:

  • الاتصال من موارد Azure دون دعم الشبكة الظاهرية
  • الاتصال من موارد خارج Azure غير المتصلة بواسطة VPN أو ExpressRoute
  • يمكن الوصول إلى الخادم المرن من خلال نقطة نهاية عامة ويمكن الوصول إليه عبر موارد الإنترنت المعتمدة. يمكن تعطيل الوصول العام إذا لزم الأمر.
  • القدرة على تكوين نقاط النهاية الخاصة للوصول إلى الخادم من المضيفين على شبكة ظاهرية (VNet)

اختر الوصول الخاص (تكامل VNet) إذا كنت تريد الإمكانات التالية:

  • الاتصال بالخادم المرن من موارد Azure داخل نفس الشبكة الظاهرية أو شبكة ظاهرية نظيرة دون الحاجة إلى تكوين نقطة نهاية خاصة
  • استخدام VPN أو ExpressRoute للاتصال من موارد غير Azure بالخادم المرن
  • عدم توفر نقاط النهاية العامة

تنطبق الخصائص التالية سواء اخترت استخدام الوصول الخاص أو خيار الوصول العام:

  • تحتاج الاتصالات من عناوين IP المسموح بها إلى المصادقة على مثيل Azure Database for MySQL Flexible Server مع بيانات اعتماد صالحة
  • يتوفر تشفير الاتصال لنسبة استخدام الشبكة
  • يحتوي الخادم على اسم مجال مؤهل بالكامل (fqdn). نوصي باستخدام fqdn بدلا من عنوان IP لخاصية اسم المضيف في سلسلة الاتصال.
  • يتحكم كلا الخيارين في الوصول على مستوى الخادم، وليس على مستوى قاعدة البيانات أو الجدول. يمكنك استخدام خصائص أدوار MySQL للتحكم في قاعدة البيانات والجدول والوصول إلى الكائنات الأخرى.

سيناريوهات الشبكة الظاهرية غير المدعومة

  • نقطة النهاية العامة (أو IP العام أو DNS) - لا يمكن أن يحتوي الخادم المرن المنشور على شبكة ظاهرية على نقطة نهاية عامة.
  • بعد نشر الخادم المرن إلى شبكة ظاهرية وشبكة فرعية، لا يمكنك نقله إلى شبكة ظاهرية أو شبكة فرعية أخرى.
  • بعد نشر الخادم المرن، لا يمكنك نقل الشبكة الظاهرية التي يستخدمها الخادم المرن إلى مجموعة موارد أو اشتراك آخر.
  • لا يمكن زيادة حجم الشبكة الفرعية (مساحات العناوين) بمجرد وجود الموارد في الشبكة الفرعية.
  • لا يسمح بالتغيير من الوصول العام إلى الخاص بعد إنشاء الخادم. الطريقة الموصى بها هي استخدام الاستعادة في نقطة زمنية.

إشعار

إذا كنت تستخدم خادم DNS المخصص، يجب استخدام معيد توجيه DNS لحل FQDN لقاعدة بيانات Azure لمثيل خادم MySQL المرن. راجع تحليل الاسم الذي يستخدم خادم DNS لمعرفة المزيد.

اسم المضيف

بغض النظر عن خيار الشبكة الخاص بك، نوصي باستخدام اسم المجال المؤهل بالكامل (FQDN) <servername>.mysql.database.azure.com في سلسلة الاتصال عند الاتصال بقاعدة بيانات Azure لمثيل خادم MySQL المرن. لا ضمان لبقاء عنوان IP الخاص بالخادم ثابتاً. سيساعدك استخدام FQDN في تجنب إجراء تغييرات على سلسلة الاتصال الخاصة بك.

مثال يستخدم FQDN كاسم مضيف هو اسم المضيف = servername.mysql.database.azure.com. حيثما أمكن، تجنب استخدام اسم المضيف = 10.0.0.4 (عنوان خاص) أو اسم المضيف = 40.2.45.67 (عنوان عام).

TLS وSSL

يدعم Azure Database for MySQL Flexible Server توصيل تطبيقات العميل بمثيل Azure Database for MySQL Flexible Server باستخدام طبقة مآخذ التوصيل الآمنة (SSL) مع تشفير أمان طبقة النقل (TLS). TLS هو بروتوكول قياسي في الصناعة يضمن اتصالات الشبكة المشفرة بين خادم قاعدة البيانات وتطبيقات العميل، ما يسمح لك بالالتزام بمتطلبات التوافق.

تدعم قاعدة بيانات Azure لخادم MySQL المرن الاتصالات المشفرة باستخدام أمان طبقة النقل (TLS 1.2) بشكل افتراضي، ويتم رفض جميع الاتصالات الواردة مع TLS 1.0 وTLS 1.1 بشكل افتراضي. يمكن تكوين فرض الاتصال المشفر أو تكوين إصدار TLS على الخادم المرن وتغييره.

فيما يلي التكوينات المختلفة لإعدادات SSL وTLS التي يمكنك الحصول علىها للخادم المرن:

هام

وفقا لإزالة الدعم لبروتوكولات TLS 1.0 وTLS 1.1، بدءا من أوائل سبتمبر 2024، لن يسمح للخوادم الجديدة باستخدام TLS 1.0 أو 1.1، ولن يسمح للخوادم الموجودة بالرجوع إلى هذه الإصدارات. بدءا من منتصف سبتمبر 2024، سنبدأ ترقية إلزامية لجميع الخوادم التي تستخدم حاليا TLS 1.0 أو 1.1 إلى TLS 1.2. ومن المتوقع أن تكتمل عملية الترقية هذه بحلول نهاية سبتمبر 2024. نوصي بشدة بأن يضمن العملاء توافق تطبيقاتهم تماما مع TLS 1.2 قبل نهاية سبتمبر.

السيناريو إعدادات معلمات الخادم ‏‏الوصف
تعطيل SSL (الاتصالات المشفرة) require_secure_transport = OFF إذا كان تطبيقك القديم لا يدعم الاتصالات المشفرة بمثيل Azure Database for MySQL Flexible Server، يمكنك تعطيل فرض الاتصالات المشفرة إلى الخادم المرن عن طريق تعيين require_secure_transport=OFF.
فرض SSL مع الإصدار < 1.2 من TLS (سيتم إهماله في سبتمبر 2024) require_secure_transport = ON و tls_version = TLS 1.0 أو TLS 1.1 إذا كان تطبيقك القديم يدعم الاتصالات المشفرة ولكنه يتطلب الإصدار < 1.2 من TLS، يمكنك تمكين الاتصالات المشفرة، ولكن تكوين الخادم المرن للسماح بالاتصالات بإصدار TLS (الإصدار 1.0 أو v1.1) المدعوم من التطبيق الخاص بك
فرض SSL مع إصدار = 1.2 من TLS (التكوين الافتراضي) require_secure_transport = ON و tls_version = TLS 1.2 هذا هو التكوين الموصى به والافتراضي لخادم مرن.
فرض SSL مع إصدار = 1.3 من TLS (مدعوم مع MySQL v8.0 والإصدار الأحدث) require_secure_transport = ON و tls_version = TLS 1.3 هذا مفيد ويوصى به لتطوير التطبيقات الجديدة

إشعار

التغييرات على تشفير SSL على الخادم المرن غير مدعومة. يتم فرض مجموعات تشفير FIPS بشكل افتراضي عند تعيين tls_version إلى الإصدار 1.2 من TLS. بالنسبة لإصدارات TLS بخلاف الإصدار 1.2، يتم تعيين SSL Cipher إلى الإعدادات الافتراضية التي تأتي مع تثبيت مجتمع MySQL.

راجع الاتصال باستخدام SSL/TLS لمعرفة كيفية تحديد إصدار TLS الذي تستخدمه.

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