Freigeben über


Lernprogramm: Zuweisen von Rollen zu Dienstprinzipale (Vorschau)

[Dieser Artikel ist die Vorabveröffentlichungsdokumentation und unterliegt Änderungen.]

Mithilfe der rollenbasierten Zugriffssteuerung (RBAC) in Power Platform können Administratoren Benutzern, Gruppen und Dienstprinzipale integrierte Rollen im Mandanten-, Umgebungs- oder Umgebungsbereich zuweisen. In diesem Lernprogramm wird ein gängiges Automatisierungsszenario erläutert: Zuweisen der Rolle "Mitwirkender " zu einem Dienstprinzipal auf Mandantenebene mithilfe der Autorisierungs-API.

Weitere Informationen zu RBAC-Konzepten, integrierten Rollen und Bereichsvererbung finden Sie unter Rollenbasierte Zugriffssteuerung für das Power Platform Admin Center.

Von Bedeutung

  • Dies ist eine Vorschaufunktion.
  • Funktionen in der Vorschauversion sind nicht für den Produktionseinsatz gedacht und können eine eingeschränkte Funktionalität aufweisen. Für diese Features gelten ergänzende Nutzungsbedingungen. Die Features werden vor einer offiziellen Veröffentlichung zur Verfügung gestellt, sodass die Kundschaft frühzeitig Zugriff erhält und Feedback geben kann.

In diesem Tutorial erhalten Sie Informationen zu Folgendem:

  • Authentifizieren sie sich mit der Power Platform-API.
  • Auflisten der verfügbaren Rollendefinitionen.
  • Erstellen Sie eine Rollenzuweisung für einen Dienstprinzipal im Mandantenbereich.
  • Überprüfen Sie die Rollenzuweisung.

Voraussetzungen

  • Eine Für die Power Platform-API konfigurierte Microsoft Entra-App-Registrierung mit einem Zertifikat oder geheimem Clientschlüssel für die Dienstprinzipalauthentifizierung. Anleitungen finden Sie unter "Authentifizierung".
  • Die Enterprise-Anwendungsobjekt-ID für den Dienstprinzipal (gefunden in Microsoft Entra ID>Enterprise-Anwendungen).
  • Die aufrufende Identität muss über die Rollenverwaltungsrolle "Power Platform-Administrator" oder "Power Platform" verfügen.

Definitionen integrierter Rollen

Power Platform bietet vier integrierte Rollen, die über RBAC zugewiesen werden können. Jede Rolle verfügt über einen festen Satz von Berechtigungen und kann im Mandanten-, Umgebungs- oder Umgebungsbereich zugewiesen werden.

Rollenname Rollen-ID Erlaubnisse
Power Platform-Besitzer 0cb07c69-1631-4725-ab35-e59e001c51ea Alle Berechtigungen
Power Platform-Mitwirkender ff954d61-a89a-4fbe-ace9-01c367b89f87 Verwalten und Lesen aller Ressourcen, aber keine Rollenzuweisungen vornehmen oder ändern
Power Platform-Leser c886ad2e-27f7-4874-8381-5849b8d8a090 Schreibgeschützter Zugriff auf alle Ressourcen
Administrator für rollenbasierte Zugriffskontrolle in der Power Platform 95e94555-018c-447b-8691-bdac8e12211e Lesen aller Ressourcen + Verwalten von Rollenzuweisungen

Schritt 1. Auflisten verfügbarer Rollendefinitionen

Authentifizieren und abrufen Sie zunächst die verfügbaren Rollendefinitionen, um die Rollen-ID des Mitwirkenden zu bestätigen.

# 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

Erwartete Ausgabe:

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-Referenz: Role-Based Zugriffssteuerung – Listenrollendefinitionen

Schritt 2. Zuweisen der Rolle "Mitwirkender" zu einem Dienstprinzipal

Erstellen Sie eine Rollenzuweisung, die der Power Platform-Mitwirkendenrolle einem Dienstprinzipal im Mandantenbereich zusteht. Ersetzen Sie sie YOUR_TENANT_ID durch Ihre Mandanten-GUID und YOUR_ENTERPRISE_APP_OBJECT_ID durch die Unternehmensanwendungsobjekt-ID von 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

Erwartete Ausgabe:

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-Referenz: Role-Based Zugriffssteuerung – Rollenzuweisung erstellen

Schritt 3. Überprüfen der Rollenzuweisung

Rufen Sie alle Rollenzuweisungen ab, um zu bestätigen, dass die neue Zuordnung vorhanden ist.

$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

Erwartete Ausgabe:

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

Power Platform-API-Referenz: Rollenbasierte Zugriffssteuerung – Rollenzuweisungen auflisten