مشاركة عبر


كيفية استخدام التحكم في الوصول المستند إلى الدور في Azure API Management

ينطبق على: جميع مستويات إدارة واجهة برمجة التطبيقات

تعتمد إدارة واجهة برمجة تطبيقات Azure على التحكم في الوصول المستند إلى الدور في Azure (Azure RBAC) لتمكين إدارة الوصول الدقيقة لخدمات وكيانات إدارة واجهة برمجة التطبيقات بما في ذلك مساحات العمل. تمنحك هذه المقالة نظرة عامة على الأدوار المضمنة والمخصصة في إدارة API Management. لمزيد من المعلومات حول إدارة الوصول في مدخل Azure، راجع البدء في إدارة الوصول في مدخل Azure.

إشعار

نوصي باستخدام الوحدة النمطية Azure Az PowerShell للتفاعل مع Azure. للبدء، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.

أدوار الخدمة المضمنة

توفر إدارة واجهة برمجة التطبيقات حاليا ثلاثة أدوار خدمة مضمنة. يمكن تعيين هذه الأدوار في نطاقات مختلفة، بما في ذلك الاشتراك ومجموعة الموارد ومثيل إدارة API Management الفردي. على سبيل المثال، إذا قمت بتعيين دور "API Management Service Reader" لمستخدم على مستوى مجموعة الموارد، فحينئذٍ يكون للمستخدم حق الوصول إلى جميع مثيلات إدارة API Management داخل مجموعة الموارد.

يوفر الجدول التالي وصفًا موجزًا للأدوار المضمنة. يمكنك تعيين هذه الأدوار باستخدام مدخل Azure أو أدوات أخرى، بما في ذلك PowerShell من Azure وAzure CLIوREST API. للحصول على تفاصيل حول كيفية تعيين الأدوار المضمنة، راجع تعيين أدوار Azure لإدارة الوصول إلى موارد اشتراك Azure.

الدور وصول للقراءة فقط[1] وصول للكتابة فقط[2] إنشاء الخدمة، والحذف وتوسيع النطاق وVPN وتكوين المجال المخصص الوصول إلى بوابة الناشر القديمة ‏‏الوصف
مساهم خدمة إدارة API Management المستخدم الفائق. لديه حق وصول CRUD الكامل إلى خدمات وكيانات إدارة API Management (على سبيل المثال، واجهات برمجة التطبيقات النُهج). لديه حق الوصول إلى بوابة الناشر القديمة.
قارئ خدمة إدارة API Management لديه حق الوصول للقراءة فقط إلى خدمات API Management والكيانات.
مشغل خدمة إدارة API Management يمكنه إدارة خدمات API Management، لكن ليست الكيانات.

[1] الوصول للقراءة فقط إلى خدمات وكيانات إدارة API Management (على سبيل المثال، واجهات برمجة التطبيقات والسياسات).

الوصول للكتابة إلى خدمات وكيانات إدارة API Management باستثناء العمليات التالية: إنشاء المثيل وحذفه وتغيير الحجم وتكوين VPN وإعداد المجال المخصص.

أدوار مساحة العمل المضمنة

توفر إدارة واجهة برمجة التطبيقات الأدوار المضمنة التالية للمتعاونين في مساحات العمل في مثيل APIM.

يجب تعيين متعاون في مساحة العمل لكل من دور نطاق مساحة العمل ودور نطاق الخدمة.

الدور Scope ‏‏الوصف
مساهم مساحة عمل إدارة واجهة برمجة التطبيقات workspace يمكنه إدارة مساحة العمل وعرضها، ولكن ليس تعديل أعضائها. يجب تعيين هذا الدور في نطاق مساحة العمل.
قارئ مساحة عمل إدارة واجهة برمجة التطبيقات workspace لديه حق الوصول للقراءة فقط إلى الكيانات في مساحة العمل. يجب تعيين هذا الدور في نطاق مساحة العمل.
مطور API Management Workspace API workspace لديه حق الوصول للقراءة إلى الكيانات في مساحة العمل والوصول للقراءة والكتابة إلى الكيانات لتحرير واجهات برمجة التطبيقات. يجب تعيين هذا الدور في نطاق مساحة العمل.
مدير منتج واجهة برمجة تطبيقات مساحة عمل إدارة واجهة برمجة التطبيقات workspace لديه حق الوصول للقراءة إلى الكيانات في مساحة العمل والوصول للقراءة والكتابة إلى الكيانات لنشر واجهات برمجة التطبيقات. يجب تعيين هذا الدور في نطاق مساحة العمل.
مطور واجهة برمجة تطبيقات مساحة عمل خدمة إدارة واجهة برمجة التطبيقات service لديه حق الوصول للقراءة إلى العلامات والمنتجات والوصول للكتابة للسماح:

▪️ تعيين واجهات برمجة التطبيقات للمنتجات
▪️ تعيين علامات للمنتجات وواجهات برمجة التطبيقات

يجب تعيين هذا الدور في نطاق الخدمة.
مدير منتج واجهة برمجة تطبيقات مساحة عمل خدمة إدارة واجهة برمجة التطبيقات service لديه نفس الوصول مثل API Management Service Workspace API Developer بالإضافة إلى الوصول للقراءة للمستخدمين والوصول للكتابة للسماح بتعيين المستخدمين للمجموعات. يجب تعيين هذا الدور في نطاق الخدمة.

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

أدوار مدخل المطور المضمنة

الدور Scope ‏‏الوصف
محرر محتوى مدخل مطور إدارة واجهة برمجة التطبيقات service يمكنه تخصيص مدخل المطور وتحرير محتواه ونشره باستخدام واجهات برمجة تطبيقات Azure Resource Manager.

أدوار مخصصة

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

إشعار

لتتمكن من رؤية مثيل API Management في مدخل Azure، يجب أن يتضمن الدور المخصص الإجراء Microsoft.ApiManagement/service/read.

عند إنشاء دور مخصص، يكون من الأسهل البدء بأحد الأدوار المضمنة. قم بتحرير السمات لإضافة Actionsأو NotActionsأو AssignableScopes، ثم احفظ التغييرات كدور جديد. يبدأ المثال التالي بدور "قارئ خدمة إدارة واجهة برمجة التطبيقات" وينشئ دورًا مخصصاً يسمى "محرر واجهة برمجة تطبيقات الحاسبة". يمكنك تعيين الدور المخصص في نطاق واجهة برمجة تطبيقات معينة. ومن ثم، فإن هذا الدور له حق الوصول إلى واجهة برمجة التطبيقات تلك فقط.

$role = Get-AzRoleDefinition "API Management Service Reader Role"
$role.Id = $null
$role.Name = 'Calculator API Contributor'
$role.Description = 'Has read access to Contoso APIM instance and write access to the Calculator API.'
$role.Actions.Add('Microsoft.ApiManagement/service/apis/write')
$role.Actions.Add('Microsoft.ApiManagement/service/apis/*/write')
$role.AssignableScopes.Clear()
$role.AssignableScopes.Add('/subscriptions/<Azure subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.ApiManagement/service/<APIM service instance name>/apis/<API name>')
New-AzRoleDefinition -Role $role
New-AzRoleAssignment -ObjectId <object ID of the user account> -RoleDefinitionName 'Calculator API Contributor' -Scope '/subscriptions/<subscription ID>/resourceGroups/<resource group name>/providers/Microsoft.ApiManagement/service/<APIM service instance name>/apis/<API name>'

تحتوي مقالة عمليات موفر موارد Azure Resource Manager على قائمة الأذونات التي يمكن منحها على مستوى API Management.

لمعرفة المزيد حول التحكم في الوصول استنادا إلى الدور في Azure، راجع المقالات التالية: