Udostępnij za pośrednictwem


Samouczek: przypisywanie ról do jednostek usługi (wersja zapoznawcza)

[Ten artykuł to dokumentacja wstępna, która może ulec zmianie].

Kontrola dostępu oparta na rolach (RBAC) na platformie Power Platform umożliwia administratorom przypisywanie wbudowanych ról do użytkowników, grup i jednostek usługi w dzierżawie, grupie środowiska lub zakresie środowiska. W tym samouczku przedstawiono typowy scenariusz automatyzacji: przypisywanie roli Współautor do jednostki usługi w zakresie dzierżawy przy użyciu interfejsu API autoryzacji.

Aby dowiedzieć się więcej na temat pojęć dotyczących kontroli dostępu opartej na rolach, wbudowanych ról i dziedziczenia zakresu, zobacz Kontrola dostępu oparta na rolach dla centrum administracyjnego platformy Power Platform.

Ważna

  • Jest to funkcja w wersji zapoznawczej.
  • Funkcje w wersji zapoznawczej nie są przeznaczone do użytku produkcyjnego i mogą mieć ograniczoną funkcjonalność. Te funkcje podlegają dodatkowym warunkom użytkowania i są dostępne przed oficjalną wersją, aby klienci mogli uzyskać wczesny dostęp i przekazać opinię.

Z tego samouczka dowiesz się, jak wykonywać następujące czynności:

  • Uwierzytelnianie za pomocą interfejsu API platformy Power Platform.
  • Lista dostępnych definicji ról.
  • Utwórz przypisanie roli dla jednostki usługi w zakresie dzierżawy.
  • Sprawdź przypisanie roli.

Wymagania wstępne

  • Rejestracja aplikacji Entra firmy Microsoft skonfigurowana dla interfejsu API platformy Power Platform z certyfikatem lub kluczem tajnym klienta na potrzeby uwierzytelniania jednostki usługi. Aby uzyskać wskazówki, zobacz Uwierzytelnianie.
  • Identyfikator obiektu aplikacji dla przedsiębiorstw dla jednostki usługi (znajdujący się w aplikacjach firmy Microsoft Entra ID>Dla przedsiębiorstw).
  • Tożsamość wywołująca musi mieć rolę administratora platformy Power Platform lub administratora kontroli dostępu opartej na rolach platformy Power Platform .

Wbudowane definicje ról

Platforma Power Platform udostępnia cztery wbudowane role, które można przypisać za pośrednictwem kontroli dostępu opartej na rolach. Każda rola ma stały zestaw uprawnień i może być przypisana do dzierżawy, grupy środowiska lub zakresu środowiska.

Nazwa roli Identyfikator roli uprawnienia
Właściciel platformy Power Platform 0cb07c69-1631-4725-ab35-e59e001c51ea Wszystkie uprawnienia
Współautor platformy Power Platform ff954d61-a89a-4fbe-ace9-01c367b89f87 Zarządzanie wszystkimi zasobami i ich odczytywanie, ale nie można wprowadzać ani zmieniać przypisań ról
Czytnik platformy Power Platform c886ad2e-27f7-4874-8381-5849b8d8a090 Dostęp tylko do odczytu do wszystkich zasobów
Administrator kontroli dostępu opartej na rolach platformy Power Platform 95e94555-018c-447b-8691-bdac8e12211e Odczytywanie wszystkich zasobów i zarządzanie przypisaniami ról

Krok 1. Wyświetlanie listy dostępnych definicji ról

Najpierw należy uwierzytelnić i pobrać dostępne definicje ról, aby potwierdzić identyfikator roli współautora.

# 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

Oczekiwane dane wyjściowe:

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

Dokumentacja interfejsu API platformy Power Platform: kontrola dostępuRole-Based — definicje ról listy

Krok 2. Przypisywanie roli Współautor do jednostki usługi

Utwórz przypisanie roli, które przyznaje rolę współautora platformy Power Platform jednostce usługi w zakresie dzierżawy. Zastąp ciąg YOUR_TENANT_ID identyfikatorem GUID dzierżawy i YOUR_ENTERPRISE_APP_OBJECT_ID identyfikatorem obiektu aplikacji dla przedsiębiorstw z identyfikatora Entra firmy Microsoft.

$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

Oczekiwane dane wyjściowe:

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

Dokumentacja interfejsu API platformy Power Platform: kontrola dostępuRole-Based — tworzenie przypisania roli

Krok 3. Weryfikowanie przypisania roli

Pobierz wszystkie przypisania ról, aby potwierdzić, że nowe przypisanie istnieje.

$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

Oczekiwane dane wyjściowe:

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

Dokumentacja interfejsu API platformy Power Platform: Kontrola dostępu oparta na rolach — przypisania ról listy