مشاركة عبر


البرنامج التعليمي: تعيين أدوار لكيانات الخدمة (معاينة)

[هذا المقال عبارة عن وثائق الإصدار التجريبي ويكون خاضع للتغيير.]

يتيح التحكم في الوصول المستند إلى الدور (RBAC) في Power Platform للمسؤولين تعيين أدوار مضمنة للمستخدمين والمجموعات وكيانات الخدمة في نطاق المستأجر أو مجموعة البيئة أو البيئة. يستعرض هذا البرنامج التعليمي سيناريو أتمتة شائع: تعيين دور المساهم إلى كيان خدمة في نطاق المستأجر باستخدام واجهة برمجة تطبيقات التخويل.

لمعرفة المزيد حول مفاهيم التحكم في الوصول استنادا إلى الدور والأدوار المضمنة وتوارث النطاق، راجع التحكم في الوصول المستند إلى الدور لمركز إدارة Power Platform.

مهم

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

ستتعلم في هذه البرنامج التعليمي:

  • المصادقة باستخدام واجهة برمجة تطبيقات Power Platform.
  • سرد تعريفات الأدوار المتوفرة.
  • إنشاء تعيين دور لمدير خدمة في نطاق المستأجر.
  • تحقق من تعيين الدور.

المتطلبات المسبقه

  • تم تكوين تسجيل تطبيق Microsoft Entra لواجهة برمجة تطبيقات Power Platform، مع شهادة أو سر عميل للمصادقة الأساسية للخدمة. للحصول على إرشادات، راجع المصادقة.
  • معرف عنصر تطبيق المؤسسة لمدير الخدمة (الموجود في تطبيقات Microsoft Entra ID>Enterprise).
  • يجب أن يكون لهوية الاستدعاء دور مسؤول Power Platform أو مسؤول التحكم في الوصول المستند إلى دور Power Platform .

تعريفات الدور المدمجة

يوفر Power Platform أربعة أدوار مضمنة يمكن تعيينها عبر RBAC. يحتوي كل دور على مجموعة ثابتة من الأذونات ويمكن تعيينه في نطاق المستأجر أو مجموعة البيئة أو البيئة.

اسم الدور معرف الدور الأذونات
مالك Power Platform 0cb07c69-1631-4725-ab35-e59e001c51ea كافة الأذونات
مساهم Power Platform ff954d61-a89a-4fbe-ace9-01c367b89f87 إدارة جميع الموارد وقراءتها، ولكن لا يمكن إجراء تعيينات الأدوار أو تغييرها
قارئ Power Platform c886ad2e-27f7-4874-8381-5849b8d8a090 الوصول للقراءة فقط إلى جميع الموارد
مسؤول التحكم في الوصول المستند إلى الدور لـ Power Platform 95e94555-018c-447b-8691-bdac8e12211e قراءة كافة الموارد + إدارة تعيينات الأدوار

الخطوة 1. سرد تعريفات الأدوار المتوفرة

أولا، مصادقة واسترداد تعريفات الدور المتوفرة لتأكيد معرف دور المساهم.

# Install the Az.Accounts module if not already installed
Install-Module -Name Az.Accounts

# Set your tenant ID
$TenantId = "YOUR_TENANT_ID"

# Authenticate and obtain an access token
Connect-AzAccount
$AccessToken = Get-AzAccessToken -TenantId $TenantId -ResourceUrl "https://api.powerplatform.com/"

$headers = @{ 'Authorization' = 'Bearer ' + $AccessToken.Token }
$headers.Add('Content-Type', 'application/json')

# List all role definitions
$roleDefinitions = Invoke-RestMethod -Method Get -Uri "https://api.powerplatform.com/authorization/roleDefinitions?api-version=2024-10-01" -Headers $headers

$roleDefinitions.value | Format-Table roleDefinitionName, roleDefinitionId

الناتج المتوقع:

roleDefinitionName                                          roleDefinitionId
------------------                                          ----------------
Power Platform owner                                        0cb07c69-1631-4725-ab35-e59e001c51ea
Power Platform contributor                                  ff954d61-a89a-4fbe-ace9-01c367b89f87
Power Platform reader                                       c886ad2e-27f7-4874-8381-5849b8d8a090
Power Platform role-based access control administrator      95e94555-018c-447b-8691-bdac8e12211e

مرجع واجهة برمجة تطبيقات Power Platform: Role-Based التحكم في الوصول - تعريفات دور القائمة

الخطوة 2. تعيين دور المساهم إلى كيان خدمة

إنشاء تعيين دور يمنح دور المساهم في Power Platform إلى كيان خدمة في نطاق المستأجر. استبدل YOUR_TENANT_ID ب GUID المستأجر الخاص بك و YOUR_ENTERPRISE_APP_OBJECT_ID بمعرف كائن تطبيق المؤسسة من Microsoft Entra ID.

$TenantId = "YOUR_TENANT_ID"
$EnterpriseAppObjectId = "YOUR_ENTERPRISE_APP_OBJECT_ID"

$body = @{
    roleDefinitionId = "ff954d61-a89a-4fbe-ace9-01c367b89f87"
    principalObjectId = $EnterpriseAppObjectId
    principalType = "ApplicationUser"
    scope = "/tenants/$TenantId"
} | ConvertTo-Json

$roleAssignment = Invoke-RestMethod -Method Post -Uri "https://api.powerplatform.com/authorization/roleAssignments?api-version=2024-10-01" -Headers $headers -Body $body

$roleAssignment

الناتج المتوقع:

roleAssignmentId   : a1b2c3d4-e5f6-7890-abcd-ef1234567890
principalObjectId  : <your-enterprise-app-object-id>
roleDefinitionId   : ff954d61-a89a-4fbe-ace9-01c367b89f87
scope              : /tenants/<your-tenant-id>
principalType      : ApplicationUser
createdOn          : 2026-03-02T12:00:00.0000000+00:00

مرجع واجهة برمجة تطبيقات Power Platform: Role-Based التحكم في الوصول - إنشاء تعيين الدور

الخطوة 3. تحقق من تعيين الدور

استرداد كافة تعيينات الأدوار لتأكيد وجود التعيين الجديد.

$roleAssignments = Invoke-RestMethod -Method Get -Uri "https://api.powerplatform.com/authorization/roleAssignments?api-version=2024-10-01" -Headers $headers

# Filter for the service principal's assignments
$roleAssignments.value | Where-Object { $_.principalObjectId -eq $EnterpriseAppObjectId } | Format-Table roleAssignmentId, roleDefinitionId, scope, principalType

الناتج المتوقع:

roleAssignmentId                        roleDefinitionId                        scope                          principalType
----------------                        ----------------                        -----                          -------------
a1b2c3d4-e5f6-7890-abcd-ef1234567890    ff954d61-a89a-4fbe-ace9-01c367b89f87    /tenants/<your-tenant-id>      ApplicationUser

مرجع واجهة برمجة تطبيقات Power Platform: التحكم في الوصول المستند إلى الدور - قائمة تعيينات الأدوار