إدارة أدوار Microsoft Entra في قاعدة بيانات Azure ل PostgreSQL - الخادم المرن
ينطبق على: قاعدة بيانات Azure ل PostgreSQL - خادم مرن
توضح هذه المقالة كيف يمكنك إنشاء أدوار قاعدة بيانات ممكنة لمعرف Microsoft Entra داخل قاعدة بيانات Azure لمثيل خادم PostgreSQL المرن.
إشعار
يفترض هذا الدليل أنك قمت بالفعل بتمكين مصادقة Microsoft Entra على مثيل خادم Azure Database for PostgreSQL المرن. راجع كيفية تكوين مصادقة Microsoft Entra
إذا كنت ترغب في التعرف على كيفية إنشاء مستخدمي اشتراك Azure وإدارتهم وامتيازاتهم، يمكنك زيارة مقالة التحكم في الوصول المستند إلى دور Azure (Azure RBAC) أو مراجعة كيفية تخصيص الأدوار.
إنشاء مسؤولي Microsoft Entra أو حذفهم باستخدام مدخل Microsoft Azure أو واجهة برمجة تطبيقات Azure Resource Manager (ARM)
- افتح صفحة المصادقة لمثيل خادم Azure Database for PostgreSQL المرن في مدخل Microsoft Azure.
- لإضافة مسؤول - حدد إضافة مسؤول Microsoft Entra وحدد مستخدما أو مجموعة أو تطبيقا أو هوية مدارة من مستأجر Microsoft Entra الحالي.
- لإزالة مسؤول - حدد حذف أيقونة للمسؤول لإزالتها.
- حدد حفظ وانتظر حتى تكتمل عملية التوفير.
إشعار
سيتوفر الدعم لإدارة مسؤولي Microsoft Entra عبر Azure SDK وaz cli وAzure PowerShell قريبا.
إدارة أدوار Microsoft Entra باستخدام SQL
بمجرد إنشاء مسؤول Microsoft Entra الأول من مدخل Microsoft Azure أو واجهة برمجة التطبيقات، يمكنك استخدام دور المسؤول لإدارة أدوار Microsoft Entra في قاعدة بيانات Azure لمثيل خادم PostgreSQL المرن.
نوصي بالتعرف على النظام الأساسي للهويات في Microsoft للحصول على أفضل استخدام لتكامل Microsoft Entra مع قاعدة بيانات Azure لخادم PostgreSQL المرن.
الأنواع الأساسية
يخزن خادم Azure Database for PostgreSQL المرن التعيين داخليا بين أدوار قاعدة بيانات PostgreSQL والمعرفات الفريدة لعناصر AzureAD. يمكن تعيين كل دور قاعدة بيانات PostgreSQL إلى أحد أنواع عناصر Microsoft Entra التالية:
- المستخدم - بما في ذلك المستأجر المحلي والمستخدمون الضيوف.
- كيان الخدمة. بما في ذلك التطبيقات والهويات المدارة
- المجموعة عند ربط دور PostgreSQL بمجموعة Microsoft Entra، يمكن لأي مستخدم أو عضو أساسي للخدمة في هذه المجموعة الاتصال بمثيل خادم Azure Database for PostgreSQL المرن مع دور المجموعة.
سرد أدوار Microsoft Entra باستخدام SQL
pg_catalog.pgaadauth_list_principals(isAdminValue boolean)
الوسيطات
isAdminValue
boolean
عند true
إرجاع المستخدمين المسؤولين. عند false
إرجاع جميع مستخدمي Microsoft Entra، بما في ذلك مسؤولي Microsoft Entra وغير المسؤولين.
نوع الإرجاع
TABLE(rolname name, principalType text, objectId text, tenantId text, isMfa integer, isAdmin integer)
جدول بالمخطط التالي:
rolname
اسم الدور في PostgreSQL.principalType
نوع الأساسي في معرف Microsoft Entra. يمكن أن يكونuser
، أوgroup
، أوservice
.objectId
معرف الكائن في معرف Microsoft Entra لهذا الأساسي.tenantId
معرف المستأجر الذي يستضيف هذا المبدأ في معرف Microsoft Entra.isMfa
ترجع قيمة إذا1
تم فرض مصادقة متعددة العوامل (MFA) للمستخدم/الدور.isAdmin
ترجع قيمة1
إذا كان المستخدم/الدور مسؤولا في PostgreSQL.
إنشاء مستخدم/دور باستخدام الاسم الأساسي ل Microsoft Entra
pg_catalog.pgaadauth_create_principal(roleName text, isAdmin boolean, isMfa boolean)
الوسيطات
roleName
text
اسم الدور الذي سيتم إنشاؤه. يجب أن يتطابق هذا مع اسم كيان Microsoft Entra.
- بالنسبة للمستخدمين ، استخدم اسم المستخدم الأساسي من ملف التعريف. بالنسبة للمستخدمين الضيوف، قم بتضمين الاسم الكامل في مجالهم الرئيسي مع علامة #EXT#.
- بالنسبة للمجموعات وكيانات الخدمة، استخدم اسم العرض. يجب أن يكون الاسم فريدا في المستأجر.
isAdmin
boolean
عند true
إنشاء مستخدم مسؤول PostgreSQL (عضو azure_pg_admin
في الدور ومع أذونات CREATEROLE وCREATEB). عند false
إنشاء مستخدم PostgreSQL عادي.
isMfa
boolean
عندما true
يفرض مصادقة متعددة العوامل لمستخدم PostgreSQL هذا.
هام
تختبر isMfa
العلامة المطالبة mfa
في الرمز المميز لمعرف Microsoft Entra، ولكنها لا تؤثر على تدفق اكتساب الرمز المميز. على سبيل المثال، إذا لم يتم تكوين مستأجر الأساسي للمصادقة متعددة العوامل، فإنه سيمنع استخدام الميزة. وإذا كان المستأجر يتطلب مصادقة متعددة العوامل لجميع الرموز المميزة، فإنه سيجعل هذه العلامة عديمة الفائدة.
نوع الإرجاع
text
قيمة مفردة تتكون من سلسلة "تم إنشاء دور ل roleName"، حيث roleName هو الوسيطة التي تم تمريرها للمعلمة roleName .
إسقاط دور باستخدام الاسم الأساسي ل Microsoft Entra
تذكر أنه يجب إسقاط أي دور Microsoft Entra تم إنشاؤه في PostgreSQL باستخدام مسؤول Microsoft Entra. إذا كنت تستخدم مسؤول PostgreSQL عاديا لإسقاط دور Entra، فسينتج عن ذلك خطأ.
DROP ROLE rolename;
إنشاء دور باستخدام معرف كائن Microsoft Entra
pg_catalog.pgaadauth_create_principal_with_oid(roleName text, objectId text, objectType text, isAdmin boolean, isMfa boolean)
الوسيطات
roleName
text
اسم الدور الذي سيتم إنشاؤه.
objectId
text
معرف الكائن الفريد لكائن Microsoft Entra.
- بالنسبة للمستخدمين والمجموعات والهويات المدارة، يمكن العثور على objectId عن طريق البحث عن اسم الكائن في صفحة معرف Microsoft Entra في مدخل Microsoft Azure. راجع هذا الدليل كمثال
- بالنسبة للمجموعات وكيانات الخدمة، استخدم اسم العرض. يجب أن يكون الاسم فريدا في المستأجر.
- بالنسبة للتطبيقات، يجب استخدام objectId لمدير الخدمة المقابل. في مدخل Microsoft Azure، يمكن العثور على objectId المطلوب في صفحة تطبيقات المؤسسة في مدخل Microsoft Azure.
objectType
text
نوع كائن Microsoft Entra للارتباط بهذا الدور. يمكن أن يكون user
، أو group
، أو service
.
isAdmin
boolean
عند true
إنشاء مستخدم مسؤول PostgreSQL (عضو azure_pg_admin
في الدور ومع أذونات CREATEROLE وCREATEB). عند false
إنشاء مستخدم PostgreSQL عادي.
isMfa
boolean
عندما true
يفرض مصادقة متعددة العوامل لمستخدم PostgreSQL هذا.
هام
تختبر isMfa
العلامة المطالبة mfa
في الرمز المميز لمعرف Microsoft Entra، ولكنها لا تؤثر على تدفق اكتساب الرمز المميز. على سبيل المثال، إذا لم يتم تكوين مستأجر الأساسي للمصادقة متعددة العوامل، فإنه سيمنع استخدام الميزة. وإذا كان المستأجر يتطلب مصادقة متعددة العوامل لجميع الرموز المميزة، فإنه سيجعل هذه العلامة عديمة الفائدة.
نوع الإرجاع
text
قيمة مفردة تتكون من سلسلة "تم إنشاء دور ل roleName"، حيث roleName هو الوسيطة التي تم تمريرها للمعلمة roleName .
تمكين مصادقة Microsoft Entra لدور PostgreSQL موجود باستخدام SQL
يستخدم خادم Azure Database for PostgreSQL المرن تسميات الأمان المقترنة بأدوار قاعدة البيانات لتخزين تعيين معرف Microsoft Entra المطابق.
يمكنك استخدام SQL التالي لتعيين تسمية الأمان المطلوبة لتعيينها إلى كائن Microsoft Entra:
SECURITY LABEL for "pgaadauth" on role "<roleName>" is 'aadauth,oid=<objectId>,type=<objectType>,admin';
الوسيطات
roleName
text
اسم دور PostgreSQL موجود يجب تمكين مصادقة Microsoft Entra له.
objectId
text
معرف الكائن الفريد لكائن Microsoft Entra.
objectType
text
يمكن تعيينه إلى user
أو group
أو service
(للتطبيقات أو الهويات المدارة التي تتصل ضمن بيانات اعتماد الخدمة الخاصة بها).
admin
text
يمكن أن يكون موجودا أو غائبا. يمكن للمستخدمين/الأدوار التي يوجد هذا الجزء لها في تسمية الأمان الخاصة بهم إدارة أدوار معرف Microsoft Entra الأخرى.
الخطوات التالية
- مراجعة المفاهيم العامة لمصادقة Microsoft Entra باستخدام قاعدة بيانات Azure ل PostgreSQL - الخادم المرن