Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Эта статья является предварительной документацией и может быть изменена.]
Управление доступом на основе ролей (RBAC) в Power Platform позволяет администраторам назначать встроенные роли пользователям, группам и субъектам-службам в пределах клиента, группы среды или среды. В этом руководстве описывается распространенный сценарий автоматизации: назначение роли участника субъекту-службе в области клиента с помощью API авторизации.
Дополнительные сведения о концепциях RBAC, встроенных ролях и наследовании областей см. в разделе "Управление доступом на основе ролей" для Центра администрирования Power Platform.
Important
- Это предварительная версия функции.
- Предварительные версии функций не предназначены для использования в производственной среде и могут иметь ограниченную функциональность. Для этих функций действуют дополнительные условия использования и они доступны перед официальным выпуском, чтобы клиенты могли досрочно получить доступ и предоставить отзывы.
Из этого руководства вы узнаете, как выполнять следующие задачи:
- Проверка подлинности с помощью API Power Platform.
- Список доступных определений ролей.
- Создайте назначение ролей для субъекта-службы в области клиента.
- Проверьте назначение роли.
Prerequisites
- Регистрация приложения Microsoft Entra, настроенная для API Power Platform, с сертификатом или секретом клиента для проверки подлинности субъекта-службы. Инструкции см. в разделе "Проверка подлинности".
- Идентификатор объекта корпоративного приложения для субъекта-службы (найден в приложениях Microsoft Entra ID>Enterprise).
- Вызывающее удостоверение должно иметь роль администратора Power Platform или администратора управления доступом на основе ролей Power Platform .
Определения встроенных ролей
Power Platform предоставляет четыре встроенных роля, которые можно назначать с помощью RBAC. Каждая роль имеет фиксированный набор разрешений и может быть назначен в клиенте, группе среды или области среды.
| Имя роли | Идентификатор роли | Permissions |
|---|---|---|
| Владелец 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
Справочник по API Power Platform: Role-Based управление доступом — определения ролей списка
Шаг 2. Назначение роли участника субъекту-службе
Создайте назначение ролей, которое предоставляет роль участника Power Platform субъекту-службе в области клиента. Замените YOUR_TENANT_ID идентификатором GUID клиента и YOUR_ENTERPRISE_APP_OBJECT_ID идентификатором объекта корпоративного приложения из идентификатора Microsoft Entra.
$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
Справочник по API 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
Справочник по API Power Platform: управление доступом на основе ролей — перечисление назначений ролей