Partajați prin


Tutorial: Atribuirea rolurilor principalelor de serviciu (previzualizare)

[Acest articol este documentație de prelansare și poate suferi modificări.]

Controlul accesului bazat pe roluri (RBAC) din Power Platform le permite administratorilor să atribuie roluri predefinite utilizatorilor, grupurilor și principalelor de servicii la domeniul de acoperire al entității găzduite, al grupului de mediu sau al mediului. Acest tutorial vă ajută să parcurgeți un scenariu de automatizare comun: atribuirea rolului Colaborator unui cont principal de serviciu în domeniul entității găzduite utilizând API-ul de autorizare.

Pentru a afla mai multe despre conceptele RBAC, rolurile încorporate și moștenirea domeniului, consultați Controlul accesului bazat pe roluri pentru Centrul de administrare Power Platform.

Important

  • Aceasta este o caracteristică de previzualizare.
  • Caracteristicile în regim de previzualizare nu sunt destinate utilizării în producție și pot avea funcționalități restricționate. Aceste funcționalități sunt supuse termeni suplimentari de utilizare și sunt disponibile înainte de o lansare oficială, astfel încât clienții să poată primi access timpuriu și să ofere feedback.

În acest tutorial, veți învăța să:

  • Autentificați-ne cu API-ul Power Platform.
  • Listați definițiile de roluri disponibile.
  • Creați o atribuire de rol pentru un cont principal de serviciu la domeniul entității găzduite.
  • Verificați atribuirea de rol.

Cerințe preliminare

  • O înregistrare a aplicației Microsoft Entra configurată pentru API-ul Power Platform, cu un certificat sau un secret de client pentru autentificarea principală a serviciului. Pentru instrucțiuni, consultați Autentificare.
  • ID-ul obiectului aplicației Enterprise pentru entitatea principală de serviciu (aflată în aplicațiile Microsoft Entra ID>Enterprise).
  • Identitatea de apelare trebuie să aibă rolul de administrator de control al accesului bazat pe Power Platform sau pe Platforma Power Platform.

Definiții de rol predefinite

Power Platform oferă patru roluri încorporate care pot fi atribuite prin RBAC. Fiecare rol are un set fix de permisiuni și poate fi atribuit la domeniul entității găzduite, al grupului de mediu sau al mediului.

Nume rol ID de rol Permisiuni
Proprietarul platformei Power 0cb07c69-1631-4725-ab35-e59e001c51ea Toate permisiunile
Contribuitor Power Platform ff954d61-a89a-4fbe-ace9-01c367b89f87 Gestionați și citiți toate resursele, dar nu puteți efectua sau modifica atribuirile de roluri
Cititor Power Platform c886ad2e-27f7-4874-8381-5849b8d8a090 Acces doar în citire la toate resursele
Administrator de control al accesului bazat pe roluri în Power Platform 95e94555-018c-447b-8691-bdac8e12211e Citirea tuturor resurselor + gestionarea atribuirilor de roluri

Pasul 1. List available role definitions

Mai întâi, autentificați și regăsiți definițiile de rol disponibile pentru a confirma ID-ul de rol colaborator.

# 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

Ieșire așteptată:

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

Referință API Power Platform: Role-Based Control acces - Definiții roluri listă

Pasul 2. Atribuirea rolului Colaborator unui cont principal de serviciu

Creați o atribuire de rol care acordă rolul de colaborator Power Platform unui principal de serviciu la domeniul entității găzduite. Înlocuiți YOUR_TENANT_ID cu GUID-ul entității găzduite și YOUR_ENTERPRISE_APP_OBJECT_ID cu ID-ul obiectului aplicației Enterprise de la 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

Ieșire așteptată:

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

Referință API platformă Power: Role-Based Control acces - Creare atribuire roluri

Pasul 3. Verificați atribuirea de rol

Regăsiți toate atribuirile de rol pentru a confirma că noua atribuire există.

$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

Ieșire așteptată:

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

Referință API Power Platform: Control acces bazat pe rol - Atribuiri de roluri de listă