إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
آلية مصادقة الاستجابة للتحدي المملح (SCRAM) هي بروتوكول مصادقة متبادل قائم على كلمة المرور. إنه مخطط استجابة للتحدي يضيف عدة مستويات من الأمان ويمنع استنشاق كلمة المرور على الاتصالات غير الموثوق بها. يدعم SCRAM تخزين كلمات المرور على الخادم في شكل مشفر ، مما يوفر أمانا متقدما
Note
للوصول إلى مثيل خادم مرن لقاعدة بيانات Azure ل PostgreSQL باستخدام طريقة المصادقة SCRAM، تحتاج مكتبات العميل إلى دعم SCRAM. ارجع إلى قائمة برامج التشغيل التي تدعم SCRAM.
تفرض مصادقة SCRAM عبئا حسابيا إضافيا على خوادم التطبيق الخاصة بك، والتي تحتاج إلى حساب إثبات العميل لكل مصادقة. قد يتم تخفيف النفقات العامة للأداء التي يقدمها SCRAM عن طريق الحد من عدد الاتصالات في تجمع اتصال التطبيق الخاص بك (تقليل الدردشة في التطبيق الخاص بك) أو الحد من عدد المعاملات المتزامنة التي يسمح بها عميلك (معاملات أكبر). يوصى باختبار أحمال العمل الخاصة بك قبل الترحيل إلى مصادقة SCRAM.
تكوين مصادقة SCRAM
قم بتغيير password_encryption إلى SCRAM-SHA-256. حاليا ، تدعم قاعدة بيانات Azure ل PostgreSQL SCRAM فقط باستخدام SHA-256.
اسمح ب SCRAM-SHA-256 كطريقة المصادقة.
Important
يمكنك اختيار فرض مصادقة SCRAM فقط عن طريق تحديد أسلوب SCRAM-SHA-256 فقط. من خلال القيام بذلك، يمكن للمستخدمين الذين لديهم مصادقة MD5 الاتصال بالخادم لفترة أطول. وبالتالي، قبل فرض SCRAM، أن يكون لديك كل من MD5 و SCRAM-SHA-256 كطرق مصادقة حتى تقوم بتحديث جميع كلمات مرور المستخدم إلى SCRAM-SHA-256. يمكنك التحقق من نوع المصادقة للمستخدمين باستخدام الاستعلام المذكور في الخطوة #7.
احفظ التغييرات. هذه خصائص ديناميكية ولا تتطلب إعادة تشغيل الخادم.
من عميل الخادم المرن لقاعدة بيانات Azure ل PostgreSQL، اتصل بقاعدة بيانات Azure لمثيل الخادم المرن PostgreSQL. على سبيل المثال
psql "host=myPGServer.postgres.database.azure.com port=5432 dbname=postgres user=myDemoUser password=<password> sslmode=require" psql (12.3 (Ubuntu 12.3-1.pgdg18.04+1), server 12.6) SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off) Type "help" for help.تحقق من تشفير كلمة المرور.
postgres=> show password_encryption; password_encryption --------------------- scram-sha-256 (1 row)يمكنك بعد ذلك تحديث كلمة المرور للمستخدمين.
postgres=> \password myDemoUser Enter new password: Enter it again: postgres=>يمكنك التحقق من أنواع مصادقة المستخدم باستخدام
azure_roles_authtype()الوظيفة.postgres=> SELECT * from azure_roles_authtype(); rolename | authtype ---------------------------+----------- azuresu | NOLOGIN pg_monitor | NOLOGIN pg_read_all_settings | NOLOGIN pg_read_all_stats | NOLOGIN pg_stat_scan_tables | NOLOGIN pg_read_server_files | NOLOGIN pg_write_server_files | NOLOGIN pg_execute_server_program | NOLOGIN pg_signal_backend | NOLOGIN replication | NOLOGIN myDemoUser | SCRAM-256 azure_pg_admin | NOLOGIN srtest | SCRAM-256 sr_md5 | MD5 (14 rows)يمكنك بعد ذلك الاتصال من العميل الذي يدعم مصادقة SCRAM بالخادم الخاص بك.
يتم دعم مصادقة SCRAM أيضا عند الاتصال ب PgBouncer المدار المدمج.