Jagamisviis:


Õppetükk: rollide määramine teenusesubjektidele (eelvaade)

[See artikkel on väljalaskeeelne dokumentatsioon ja seda võidakse muuta.]

Power Platformi rollipõhine juurdepääsu reguleerimine (RBAC) võimaldab administraatoritel määrata rentniku, keskkonnarühma või keskkonna ulatuses kasutajatele, rühmadele ja teenusesubjektidele valmisrolle. Selles õppeteemas tutvustatakse levinud automatiseerimise stsenaariumi: kaasautori rolli määramine rentniku ulatuses olevale teenusesubjektile autoriseerimise API abil.

Lisateavet RBAC-i kontseptsioonide, sisseehitatud rollide ja ulatuse pärimise kohta leiate teemast Power Platformi halduskeskuse rollipõhine juurdepääsu reguleerimine.

Oluline

  • See on eelvaatefunktsioon.
  • Eelversioon funktsioonid ei ole tootmise jaoks mõeldud ja neil võivad olla piiratud funktsioonid. Need funktsioonid alluvad täiendavatele kasutustingimustele ning on saadaval enne ametlikku väljalasket, et kliendid saaksid varakult access ja tagasisidet anda.

Selles õpetuses saate teada:

  • Autentige Power Platformi API-ga.
  • Loetle saadaolevad rollimääratlused.
  • Saate luua rentnikuulatuses teenusesubjekti jaoks rollimäärangu.
  • Kontrollige rollimäärangut.

eeltingimused

  • Microsoft Entra rakenduse registreerimine, mis on konfigureeritud Power Platformi API jaoks, millel on teenusesubjekti autentimiseks sert või kliendisaladus. Juhised leiate teemast Autentimine.
  • Teenusesubjekti ettevõtterakenduse objekti ID (asub Microsoft Entra ID>Enterprise'i rakendustes).
  • Kutsuval identiteedil peab olema Power Platformi administraatori või Power Platformi rollipõhine pääsuõiguste administraatori roll.

Sisseehitatud rollimääratlused

Power Platform pakub nelja sisseehitatud rolli, mida saab määrata RBAC-i kaudu. Igal rollil on fikseeritud õiguste kogum ja neid saab määrata rentnikule, keskkonnarühmale või keskkonnaulatusele.

Rolli nimi Rolli ID Õigused
Power Platformi omanik 0cb07c69-1631-4725-ab35-e59e001c51ea Kõik load
Power Platformi kaastööline ff954d61-a89a-4fbe-ace9-01c367b89f87 Kõigi ressursside haldamine ja lugemine, kuid rollimääranguid ei saa luua ega muuta
Power Platform lugeja c886ad2e-27f7-4874-8381-5849b8d8a090 Kirjutuskaitstud juurdepääs kõigile ressurssidele
Power Platformi rollipõhine juurdepääsukontrolli administraator 95e94555-018c-447b-8691-bdac8e12211e Kõigi ressursside lugemine ja rollimäärangute haldamine

Toiming 1. Saadaolevate rollimääratluste loend

Esmalt autentige ja tooge saadaolevad rollimääratlused kaasautori rolli ID kinnitamiseks.

# 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

Eeldatav väljund:

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 Platformi API viide: Role-Based juurdepääsu reguleerimine – loendirollide määratlused

Toiming 2. Kaasautorirolli määramine teenusesubjektile

Looge rollimäärang, mis annab Power Platformi kaasautori rolli rentnikuulatuses olevale teenusesubjektile. Asendage YOUR_TENANT_ID rentniku GUID-ga ja YOUR_ENTERPRISE_APP_OBJECT_ID Microsoft Entra ID ettevõtterakenduse objekti ID-ga.

$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

Eeldatav väljund:

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 Platformi API viide: Role-Based juurdepääsu reguleerimine – rollimäärangu loomine

Toiming 3. Rollimäärangu kontrollimine

Tooge kõik rollimäärangud, et kinnitada uue ülesande olemasolu.

$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

Eeldatav väljund:

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

Power Platformi API viide: rollipõhine juurdepääsu reguleerimine – loendirollide määramised