تكوين TLS في قاعدة بيانات Azure ل PostgreSQL - Hyperscale (Citus)
تتطلب عقدة منسق Hyperscale (Citus) تطبيقات العميل للاتصال بأمان طبقة النقل (TLS). يساعد فرض طبقة النقل الآمنة بين خادم قاعدة البيانات وتطبيقات العميل في الحفاظ على سرية البيانات أثناء النقل. تحمي إعدادات التحقق الإضافية الموضحة أدناه أيضا من هجمات "الرجل في الوسط".
فرض اتصالات TLS
تستخدم التطبيقات "سلسلة اتصال" لتحديد قاعدة البيانات الوجهة والإعدادات الخاصة بالاتصال. يتطلب العملاء المختلفون إعدادات مختلفة. للاطلاع على قائمة بسلاسل الاتصال التي يستخدمها العملاء المشتركون، راجع قسم سلاسل الاتصال لمجموعة الخوادم في مدخل Azure.
معلمات TLS وتختلف sslmode بناء على قدرات الموصل ، على سبيل المثال ssl=true أو أو sslmode=requiresslmode=required.ssl
تأكد من أن تطبيقك أو إطار عملك يدعم اتصالات طبقة النقل الآمنة (TLS)
لا تقوم بعض أطر عمل التطبيقات بتمكين طبقة النقل الآمنة بشكل افتراضي لاتصالات PostgreSQL. ومع ذلك، بدون اتصال آمن، لا يمكن للتطبيق الاتصال بعقدة منسق Hyperscale (Citus). راجع وثائق طلبك لمعرفة كيفية تمكين اتصالات طبقة النقل الآمنة (TLS).
التطبيقات التي تتطلب التحقق من صحة الشهادة لاتصال TLS
في بعض الحالات، تتطلب التطبيقات ملف شهادة محلي تم إنشاؤه من ملف شهادة المرجع المصدق (CA) الموثوق به (.cer) للاتصال بشكل آمن. توجد شهادة الاتصال بقاعدة بيانات Azure ل PostgreSQL - Hyperscale (Citus) في https://cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem. قم بتنزيل ملف الشهادة واحفظه في موقعك المفضل.
ملاحظة
للتحقق من صحة الشهادة، يمكنك التحقق من بصمة إصبع SHA-256 الخاصة بها باستخدام أداة سطر الأوامر OpenSSL:
openssl x509 -in DigiCertGlobalRootCA.crt.pem -noout -sha256 -fingerprint
# should output:
# 43:48:A0:E9:44:4C:78:CB:26:5E:05:8D:5E:89:44:B4:D8:4F:96:62:BD:26:DB:25:7F:89:34:A4:43:C7:01:61
الاتصال باستخدام psql
يوضح المثال التالي كيفية الاتصال بعقدة منسق Hyperscale (Citus) باستخدام الأداة المساعدة لسطر الأوامر psql. sslmode=verify-full استخدم إعداد سلسلة الاتصال لفرض التحقق من شهادة TLS. تمرير مسار ملف الشهادة المحلية إلى المعلمة sslrootcert .
فيما يلي مثال على سلسلة اتصال psql:
psql "sslmode=verify-full sslrootcert=DigiCertGlobalRootCA.crt.pem host=mydemoserver.postgres.database.azure.com dbname=citus user=citus password=your_pass"
تلميح
تأكد من أن القيمة التي تم تمريرها لتتطابق sslrootcert مع مسار الملف للشهادة التي قمت بحفظها.
الخطوات التالية
زيادة الأمان بشكل أكبر باستخدام قواعد جدار الحماية في قاعدة بيانات Azure ل PostgreSQL - Hyperscale (Citus).