Tutoriala: Esleitu rolak zerbitzu-nagusiei (aurrebista)

[Aurre-argitaratutako dokumentazioaren parte da artikulu hau, eta baliteke aldaketak jasatea.]

Power Platform-en roletan oinarritutako sarbide-kontrolak (RBAC) administratzaileei aukera ematen die maizterrean, ingurune-taldean edo ingurunearen esparruan dauden erabiltzaileei, taldeei eta zerbitzu-nagusiei rol integratuak esleitzeko. Tutorial honek automatizazio eszenatoki arrunt bat azaltzen du: Laguntzaile rola maizterreko esparruko zerbitzu nagusi bati esleitzea Baimenaren APIa erabiliz.

RBAC kontzeptuei, rol integratuei eta esparru-herentziari buruz gehiago jakiteko, ikus Power Platform administrazio zentrorako roletan oinarritutako sarbide-kontrola.

Garrantzitsua

  • Hau aurreikuspen-eginbidea da.
  • Aurreargitalpen-eginbideak ez daude ekoizpenerako diseinatuta, eta baliteke funtzionalitate murriztua izatea. Ezaugarri hauek erabilera baldintza osagarrien< / c0> mende daude eta kaleratze ofizial baten aurretik eskuragarri daude, bezeroek access goiztiarra jaso eta iritziak eman ditzaten.

Tutorial honetan, hau egiten ikasiko duzu:

  • Autentifikatu Power Platform APIarekin.
  • Zerrendatu erabilgarri dauden rolen definizioak.
  • Sortu zerbitzu nagusi baten rol-esleipena maizterraren esparruan.
  • Egiaztatu rolaren esleipena.

Aurrebaldintzak

  • Power Platform APIrako konfiguratutako Microsoft Entra aplikazioaren erregistroa, zerbitzu nagusiaren autentifikaziorako ziurtagiri edo bezeroaren sekretu batekin. Orientazioa lortzeko, ikus Autentifikazioa.
  • Zerbitzu nagusiaren Enterprise Application Object IDa ( Microsoft Entra ID>Enterprise aplikazioetan aurkitzen da).
  • Deitzaileak Power Platform-eko administratzailea edo Power Platform-eko rolean oinarritutako sarbide-kontroleko administratzailearen rola izan behar du.

Rolen definizio integratuak

Power Platform-ek RBAC bidez esleitu daitezkeen lau rol integratu eskaintzen ditu. Rol bakoitzak baimen multzo finko bat du eta maizterrean, ingurune-taldean edo ingurune-esparruan esleitu daiteke.

Funtzioaren izena Rolaren IDa Baimenak
Power Platform-en jabea 0cb07c69-1631-4725-ab35-e59e001c51ea Baimen guztiak
Power Platform-eko kolaboratzailea ff954d61-a89a-4fbe-ace9-01c367b89f87 Baliabide guztiak kudeatu eta irakurri, baina ezin ditu rolen esleipenak egin edo aldatu
Power Platform-en irakurgailua c886ad2e-27f7-4874-8381-5849b8d8a090 Irakurtzeko soilik sarbidea baliabide guztietarako
Power Platform-en roletan oinarritutako sarbide-kontroleko administratzailea 95e94555-018c-447b-8691-bdac8e12211e Irakurri baliabide guztiak + kudeatu rolen esleipenak

Oharra

APIa hurrengo pausoan deitzen duzunean, lau hauetatik haratago dauden rol definizio zehatzagoak ikus ditzakezu. Lanpostu horiek etorkizuneko erabilerarako gordeta daude eta oraindik ez dira esleipenerako onartzen. Xehetasunetarako, ikus Rol Definizio Gehigarriak.

1. urratsa. Zerrendatu erabilgarri dauden rolen definizioak

Lehenik eta behin, autentifikatu eta berreskuratu erabilgarri dauden rolen definizioak kolaboratzailearen rolaren IDa baieztatzeko.

# 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
$secureToken = (Get-AzAccessToken -TenantId $TenantId -ResourceUrl "https://api.powerplatform.com/").Token
$AccessToken = [System.Net.NetworkCredential]::new("", $secureToken).Password

$headers = @{ 'Authorization' = 'Bearer ' + $AccessToken }
$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

Espero zen irteera:

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 APIaren erreferentzia: Role-Based Sarbide-kontrola - Zerrendatu rolen definizioak

2. urratsa. Esleitu kolaboratzailearen rola zerbitzu-nagusi bati

Sortu Power Platform-eko kolaboratzailearen rola maizterreko esparruan dagoen zerbitzu-nagusi bati ematen dion rol-esleipena. Ordeztu YOUR_TENANT_ID zure maizterraren GUID eta YOUR_ENTERPRISE_APP_OBJECT_ID Microsoft Entra IDaren enpresa-aplikazioaren objektuaren IDarekin.

$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

Espero zen irteera:

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-en APIaren erreferentzia: Role-Based sarbide-kontrola - Sortu rol-esleipena

3. urratsa. Egiaztatu rolen esleipena

Eskuratu rol esleipen guztiak esleipen berria existitzen dela baieztatzeko.

$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

Espero zen irteera:

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

Power Platform-en APIaren erreferentzia: Roletan oinarritutako sarbide-kontrola - Zerrendatu rolen esleipenak