Dela via


Självstudie: Tilldela roller till tjänstens huvudnamn (förhandsversion)

[Denna artikel är en förhandsversion av dokumentationen och kan komma att ändras.]

Med rollbaserad åtkomstkontroll (RBAC) i Power Platform kan administratörer tilldela inbyggda roller till användare, grupper och tjänstens huvudnamn i klientorganisationen, miljögruppen eller miljöomfånget. I den här självstudien går vi igenom ett vanligt automatiseringsscenario: tilldela rollen Deltagare till ett huvudnamn för tjänsten i klientorganisationens omfång med hjälp av auktoriserings-API:et.

Mer information om RBAC-begrepp, inbyggda roller och omfångsarv finns i Rollbaserad åtkomstkontroll för Administrationscenter för Power Platform.

Viktigt!

  • Det här är en förhandsgranskningsfunktion.
  • Förhandsversionsfunktioner är inte avsedda för produktionsanvändning och kan ha begränsade funktioner. Dessa funktioner omfattas av kompletterande användningsvillkor och är tillgängliga före en officiell version så att kunderna kan få tidig åtkomst och ge feedback.

I den här självstudien lär du dig att:

  • Autentisera med Power Platform-API:et.
  • Lista tillgängliga rolldefinitioner.
  • Skapa en rolltilldelning för ett huvudnamn för tjänsten i klientomfånget.
  • Verifiera rolltilldelningen.

Förutsättningar

  • En Microsoft Entra-appregistrering som konfigurerats för Power Platform-API:et med ett certifikat eller en klienthemlighet för autentisering med tjänstens huvudnamn. Vägledning finns i Autentisering.
  • Objekt-ID för företagsprogram för tjänstens huvudnamn (finns i Microsoft Entra ID>Enterprise-program).
  • Den anropande identiteten måste ha rollen Power Platform-administratör eller power platform-rollbaserad administratör för åtkomstkontroll .

Inbyggda rolldefinitioner

Power Platform har fyra inbyggda roller som kan tilldelas via RBAC. Varje roll har en fast uppsättning behörigheter och kan tilldelas i klientorganisationen, miljögruppen eller miljöomfånget.

Rollnamn Roll-ID behörigheter
Power Platform-ägare 0cb07c69-1631-4725-ab35-e59e001c51ea Alla behörigheter
Power Platform-deltagare ff954d61-a89a-4fbe-ace9-01c367b89f87 Hantera och läsa alla resurser, men kan inte göra eller ändra rolltilldelningar
Power Platform-läsare c886ad2e-27f7-4874-8381-5849b8d8a090 Skrivskyddad åtkomst till alla resurser
Rollbaserad administratör för Power Platform-åtkomstkontroll 95e94555-018c-447b-8691-bdac8e12211e Läs alla resurser + hantera rolltilldelningar

Steg 1. Lista tillgängliga rolldefinitioner

Autentisera och hämta först de tillgängliga rolldefinitionerna för att bekräfta roll-ID:t för deltagare.

# 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

Förväntat resultat:

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 API-referens: Role-Based åtkomstkontroll – Lista rolldefinitioner

Steg 2. Tilldela rollen Deltagare till ett huvudnamn för tjänsten

Skapa en rolltilldelning som ger Rollen Power Platform-deltagare till ett huvudnamn för tjänsten i klientomfånget. Ersätt YOUR_TENANT_ID med klientorganisationens GUID och YOUR_ENTERPRISE_APP_OBJECT_ID med objekt-ID för företagsprogram från 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

Förväntat resultat:

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 API-referens: Role-Based åtkomstkontroll – Skapa rolltilldelning

Steg 3. Verifiera rolltilldelningen

Hämta alla rolltilldelningar för att bekräfta att den nya tilldelningen finns.

$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

Förväntat resultat:

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

Power Platform API-referens: Rollbaserad åtkomstkontroll – Lista rolltilldelningar