Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
[Este artigo é uma documentação de pré-lançamento e está sujeito a alterações.]
O controlo de acesso baseado em funções (RBAC) no Power Platform permite aos administradores atribuir funções incorporadas a utilizadores, grupos e principais de serviço no inquilino, grupo de ambiente ou âmbito de ambiente. Este tutorial percorre um cenário comum de automação: atribuir o papel de Contribuinte a um principal de serviço no âmbito do inquilino , usando a API de Autorização.
Para saber mais sobre conceitos RBAC, funções incorporadas e herança de âmbito, consulte Controlo de acesso baseado em funções para o centro de administração do Power Platform.
Importante
- Esta é uma funcionalidade de pré-visualização.
- As funcionalidades de pré-visualização não se destinam a utilização em produção e podem ter funcionalidades restritas. Esses recursos estão sujeitos a termos de uso suplementares e estão disponíveis antes de um lançamento oficial para que os clientes possam obter acesso antecipado e fornecer feedback.
Neste tutorial, vai aprender a:
- Autenticar com a API da Power Platform.
- Lista das definições de funções disponíveis.
- Crie uma atribuição de função para um principal de serviço no âmbito do inquilino.
- Verifique a atribuição de função.
Pré-requisitos
- Um registo de uma aplicação Microsoft Entra configurado para a API Power Platform, com um certificado ou cliente secreto para autenticação principal de serviço. Para orientação, consulte Autenticação.
- O ID do Objeto de Aplicação Empresarial para o principal de serviço (encontrado nas aplicações Microsoft Entra ID>Enterprise).
- A identidade que chama deve ter o papel de Administrador Power Platform ou Administrador de Controlo de Acesso baseado em funções Power Platform .
Definições de função incorporadas
A Power Platform oferece quatro funções integradas que podem ser atribuídas via RBAC. Cada função tem um conjunto fixo de permissões e pode ser atribuído no inquilino, grupo de ambiente ou âmbito de ambiente.
| Nome da função | ID da função | Permissões |
|---|---|---|
| Proprietário da Power Platform | 0cb07c69-1631-4725-ab35-e59e001c51ea |
Todas as permissões |
| Colaborador da Power Platform | ff954d61-a89a-4fbe-ace9-01c367b89f87 |
Gerir e ler todos os recursos, mas não pode criar ou alterar atribuições de funções |
| Leitor Power Platform | c886ad2e-27f7-4874-8381-5849b8d8a090 |
Acesso apenas de leitura a todos os recursos |
| Administrador de controlo de acessos baseado em funções na Power Platform | 95e94555-018c-447b-8691-bdac8e12211e |
Leia todos os recursos + gere atribuições de funções |
Passo 1. Lista de definições de funções disponíveis
Primeiro, autentique e recupere as definições de papéis disponíveis para confirmar o ID de papel do contribuidor.
# 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
Resultados esperados:
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
Referência da API Power Platform: Controlo de AcessoRole-Based - Definições de Papéis de Lista
Passo 2. Atribuir o papel de Contribuinte a um principal de serviço
Crie uma atribuição de função que conceda o papel de contribuidor da Power Platform a um principal de serviço no âmbito do inquilino. Substitua YOUR_TENANT_ID pelo GUID do seu tenant e YOUR_ENTERPRISE_APP_OBJECT_ID pelo ID de objeto de aplicação empresarial do 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
Resultados esperados:
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
Referência da API Power Platform: Controlo de AcessoRole-Based - Atribuição de Funções
Passo 3. Verificar a atribuição do papel
Recuperar todas as atribuições de funções para confirmar que a nova atribuição existe.
$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
Resultados esperados:
roleAssignmentId roleDefinitionId scope principalType
---------------- ---------------- ----- -------------
a1b2c3d4-e5f6-7890-abcd-ef1234567890 ff954d61-a89a-4fbe-ace9-01c367b89f87 /tenants/<your-tenant-id> ApplicationUser
Referência da API Power Platform: Controlo de Acesso Baseado em Funções - Atribuições de Funções por Lista