إدارة المستخدمين في قاعدة بيانات Azure لـ PostgreSQL flexible server

توضح هذه المقالة كيفية إنشاء مستخدمين داخل خادم مرن قاعدة بيانات Azure لـ PostgreSQL.

لتعلم كيفية إنشاء وإدارة مستخدمي اشتراك Azure وامتيازاتهم، راجع مقالة التحكم في الوصول القائم على الأدوار في Azure (Azure RBAC) أو راجع كيفية تخصيص الأدوار.

حساب مشرف الخادم

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

يتم إنشاء خادم مرن قاعدة بيانات Azure لـ PostgreSQL بثلاثة أدوار افتراضية محددة. يمكنك رؤية هذه الأدوار عن طريق تشغيل الأمر: SELECT rolname FROM pg_roles;

  • azure_pg_admin
  • أزوريسو
  • مستخدم مسؤول الخادم الخاص بك

مستخدم مسؤول الخادم هو عضو في دور azure_pg_admin. ومع ذلك، فإن حساب مسؤول الخادم ليس جزءا من دور azuresu. نظرا لأن هذه الخدمة هي خدمة PaaS مدارة، فإن Microsoft فقط هي جزء من دور المستخدم المتميز.

يستخدم محرك PostgreSQL امتيازات للتحكم في الوصول إلى كائنات قاعدة البيانات، كما تمت مناقشته في وثائق منتج PostgreSQL. في قاعدة بيانات Azure ل PostgreSQL، يتم منح مستخدم مسؤول الخادم هذه الامتيازات:

  • تسجيل الدخول, NOSUPERUSER, وهيرث, CREATEDB, CREATEROLE

استخدم حساب مستخدم مسؤول الخادم لإنشاء المزيد من المستخدمين ومنح هؤلاء المستخدمين دور azure_pg_admin. أيضا، استخدم حساب مسؤول الخادم لإنشاء مستخدمين وأدوار أقل امتيازا لديهم حق الوصول إلى قواعد البيانات والمخططات الفردية.

كيفية إنشاء المزيد من المستخدمين المسؤولين في قاعدة بيانات Azure ل PostgreSQL

  1. احصل على معلومات الاتصال واسم مستخدم المسؤول. تحتاج إلى اسم الخادم الكامل وبيانات اعتماد تسجيل دخول المسؤول للاتصال بخادمك المرن قاعدة بيانات Azure لـ PostgreSQL. يمكنك بسهولة العثور على اسم الخادم ومعلومات تسجيل الدخول من صفحة نظرة عامة على الخادم أو صفحة الخصائص في مدخل Microsoft Azure.

  2. استخدم حساب المسؤول وكلمة المرور للاتصال بخادم قاعدة بيانات Azure لـ PostgreSQL المرن. استخدم أداة العميل المفضلة لديك ، مثل pgAdmin أو psql. إذا لم تكن متأكدا من كيفية الاتصال، فراجع إنشاء قاعدة بيانات Azure ل PostgreSQL.

  3. قم بتحرير وتشغيل التعليمات البرمجية SQL التالية. استبدل اسم المستخدم الجديد بقيمة <new_user>البدلة المؤقتة، واستبدل كلمة المرور المؤقتة بكلمة مرور قوية خاصة بك.

    CREATE USER <new_user> CREATEDB CREATEROLE PASSWORD '<StrongPassword!>';
    
    GRANT azure_pg_admin TO <new_user>;
    

كيفية إنشاء مستخدمي قاعدة بيانات في قاعدة بيانات Azure ل PostgreSQL

  1. احصل على معلومات الاتصال واسم مستخدم المسؤول. تحتاج إلى اسم الخادم الكامل وبيانات اعتماد تسجيل دخول المسؤول للاتصال بخادمك المرن قاعدة بيانات Azure لـ PostgreSQL. يمكنك بسهولة العثور على اسم الخادم ومعلومات تسجيل الدخول من صفحة نظرة عامة على الخادم أو صفحة الخصائص في مدخل Microsoft Azure.

  2. استخدم حساب المسؤول وكلمة المرور للاتصال بخادم قاعدة بيانات Azure لـ PostgreSQL المرن. استخدم أداة العميل المفضلة لديك ، مثل pgAdmin أو psql.

  3. قم بتحرير وتشغيل التعليمات البرمجية SQL التالية. استبدل قيمة <db_user> العنصر النائب باسم المستخدم الجديد المقصود وقيمة <newdb> العنصر النائب باسم قاعدة البيانات الخاصة بك. استبدل كلمة مرور العنصر النائب بكلمة المرور القوية الخاصة بك.

    تنشئ التعليمة البرمجية SQL قاعدة بيانات جديدة، ثم تنشئ مستخدما جديدا في قاعدة بيانات Azure لـ PostgreSQL الخادم المرن وتمنح امتياز الاتصال بقاعدة البيانات الجديدة لهذا المستخدم.

    CREATE DATABASE <newdb>;
    
    CREATE USER <db_user> PASSWORD '<StrongPassword!>';
    
    GRANT CONNECT ON DATABASE <newdb> TO <db_user>;
    
  4. باستخدام حساب مسؤول، قد تحتاج إلى منح امتيازات أخرى لتأمين الكائنات في قاعدة البيانات. ارجع إلى وثائق PostgreSQL للحصول على مزيد من التفاصيل حول أدوار وامتيازات قاعدة البيانات. على سبيل المثال:

    GRANT ALL PRIVILEGES ON DATABASE <newdb> TO <db_user>;
    

    إذا أنشأ المستخدم "دورا" جدول، فإن الجدول ينتمي إلى هذا المستخدم. إذا احتاج مستخدم آخر إلى الوصول إلى الجدول، فيجب عليك منح امتيازات للمستخدم الآخر على مستوى الجدول.

    على سبيل المثال:

    GRANT SELECT ON ALL TABLES IN SCHEMA <schema_name> TO <db_user>;
    
  5. قم بتسجيل الدخول إلى الخادم الخاص بك، مع تحديد قاعدة البيانات المعينة، باستخدام اسم المستخدم وكلمة المرور الجديدين. يوضح هذا المثال سطر الأوامر psql. باستخدام هذا الأمر، تتم مطالبتك بكلمة المرور لاسم المستخدم. استبدل اسم الخادم واسم قاعدة البيانات واسم المستخدم الخاص بك.

    psql --host=mydemoserver.postgres.database.azure.com --port=5432 --username=db_user --dbname=newdb