الوصول العام في Azure Cosmos DB ل PostgreSQL

ينطبق على: Azure Cosmos DB ل PostgreSQL (مدعوم بملحق قاعدة بيانات Citus إلى PostgreSQL)

يدعم Azure Cosmos DB ل PostgreSQL ثلاثة خيارات للشبكات:

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

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

تصف هذه الصفحة خيار الوصول العام. للوصول الخاص، راجع الوصول الخاص في Azure Cosmos DB ل PostgreSQL.

نظرة عامة على جدار الحماية

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

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

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

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

الاتصال من الإنترنت ومن Azure

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

عندما يمنع جدار الحماية الاتصالات، يمكن أن يسبب أخطاء التطبيق. استخدام برنامج تشغيل PostgreSQL JDBC، على سبيل المثال، يثير خطأ مثل هذا:

java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: FATAL: no pg\_hba.conf entry for host "123.45.67.890", user "citus", database "citus", SSL

راجع إنشاء قواعد جدار الحماية وإدارتها لمعرفة كيفية تعريف القواعد.

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

عند عدم تصرف الوصول إلى Microsoft Azure Cosmos DB لخدمة PostgreSQL كما تتوقع، ضع في اعتبارك هذه النقاط:

  • لم تسري التغييرات التي تم إجراؤها على قائمة السماح بعد: قد يكون هناك تأخير لمدة خمس دقائق للتغييرات على Azure Cosmos DB لتكوين جدار حماية PostgreSQL حتى تصبح سارية المفعول.

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

    على سبيل المثال، باستخدام عميل JDBC يظهر الخطأ التالي.

    java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: FATAL: password authentication failed for user "yourusername"

  • عنوان IP الديناميكي: إذا كان لديك اتصال بالإنترنت مع عنوان IP ديناميكي وكنت تواجه مشكلة في الحصول على جدار الحماية، يمكنك تجربة أحد الحلول التالية:

    • اطلب من موفر خدمة الإنترنت (ISP) نطاق عناوين IP المعين لأجهزة الكمبيوتر العميلة التي تصل إلى عقدة المنسق، ثم أضف نطاق عنوان IP كقاعدة جدار حماية.

    • الحصول على عنوان IP ثابت بدلا من ذلك لأجهزة الكمبيوتر العميلة ثم قم بإضافة عنوان IP ثابت كقاعدة جدار حماية.

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

للحصول على مقالات حول إنشاء قواعد جدار حماية على مستوى الملقم وقاعدة البيانات، راجع: