Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
[Бұл мақала — шығарылым алдындағы құжаттама және ол өзгеруі мүмкін.]
Power Platform-дағы рөлге негізделген қолжетімділікті бақылау (RBAC) әкімшілерге пайдаланушыларға, топтарға және қызмет басшыларына жалға алушы, орта тобы немесе орта ауқымындағы кіріктірілген рөлдерді тағайындауға мүмкіндік береді. Бұл оқулықта кең таралған автоматтандыру сценарийі қарастырылады: Contributor рөлін Authorization API арқылы жалға алушы ауқымындағы қызмет басшысына тағайындау.
RBAC ұғымдары, кіріктірілген рөлдер және ауқым мұрагерлігі туралы көбірек білу үшін Power Platform әкімшілік орталығы үшін рөлге негізделген қолжетімділікті бақылау бөлімін қараңыз.
Маңызды
- Бұл алдын ала қарау мүмкіндігі болып табылады.
- Алдын ала қарау нұсқасының мүмкіндіктері өндірісті пайдалану үшін арналмаған және функционалдық шектеулі болуы мүмкін. Бұл мүмкіндіктер қосымша пайдалану шарттарына бағынады және тұтынушылар ертерек қол жеткізіп, кері байланыс бере алуы үшін ресми шығарылымға дейін қолжетімді болады.
Бұл оқулықта сіз мыналарды үйренесіз:
- Power Platform API арқылы аутентификациялаңыз.
- Қолжетімді рөл анықтамаларын тізімдеңіз.
- Қызмет көрсетуші үшін жалдаушы ауқымда рөл тағайындау жасаңыз.
- Рөл тағайындалуын тексер.
Алғышарттар
- Power Platform API-ге конфигурацияланған Microsoft Entra қосымшасының тіркеуі, қызмет үшін сертификат немесе клиент құпиясы бар негізгі аутентификациясымен. Нұсқаулық алу үшін Аутентификация бөлімін қараңыз.
- Microsoft Entra> қосымшаларында кездесетін қызмет принципінің Enterprise Application Object ID идентификаторы.
- Шақыру идентификаторы Power Platform Administrator немесе Power Platform рөліне негізделген қолжетімділікті бақылау әкімшісі рөлін атқаруы керек.
Кіріктірілген рөл анықтамалары
Power Platform RBAC арқылы тағайындалатын төрт кіріктірілген рөлді ұсынады. Әр рөлге белгілі бір рұқсаттар жиынтығы бар және оны жалға алушы, қоршаған орта тобы немесе орта ауқымында тағайындауға болады.
| Рөл атауы | Рөл идентификаторы | Рұқсаттар |
|---|---|---|
| Power Platform иесі | 0cb07c69-1631-4725-ab35-e59e001c51ea |
Барлық рұқсаттар |
| Power Platform қатысушысы | ff954d61-a89a-4fbe-ace9-01c367b89f87 |
Барлық ресурстарды басқару және оқу, бірақ рөлдерді тағайындау немесе өзгерту мүмкін емес |
| Power Platform оқырманы | c886ad2e-27f7-4874-8381-5849b8d8a090 |
Барлық ресурстарға тек оқуға қолжетімділік |
| Power Platform рөлге негізделген қолжетімділікті басқару әкімшісі | 95e94555-018c-447b-8691-bdac8e12211e |
Барлық ресурстарды оқыңыз + рөлдерді тағайындауды басқарыңыз |
1-қадам. Қолжетімді рөлдердің анықтамалары тізімі
Алдымен, қолжетімді рөл анықтамаларын аутентификациялап, үлес қосушы рөл идентификаторын растау үшін алу.
# 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
$secureToken = (Get-AzAccessToken -TenantId $TenantId -ResourceUrl "https://api.powerplatform.com/").Token
$AccessToken = [System.Net.NetworkCredential]::new("", $secureToken).Password
$headers = @{ 'Authorization' = 'Bearer ' + $AccessToken }
$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
Күтілетін нәтиже:
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 анықтамасы: Role-Based Access Control - Рөл анықтамаларын тізімдеу
2-қадам. Үлес қосушы рөлін қызмет басшысына тағайындау
Power Platform қатысушысы рөлін жалға алушы ауқымындағы қызмет басшысына беретін рөл тағайындау. Microsoft Entra ID-дегі жалға алушы GUID және YOUR_TENANT_ID Microsoft Entra ID-дегі кәсіпорын қосымшасының объект идентификаторымен ауыстырыңызYOUR_ENTERPRISE_APP_OBJECT_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
Күтілетін нәтиже:
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 анықтамасы: Role-Based Access Control - Рөлді тағайындау жасау
3-қадам. Рөл тағайындалуын тексеру
Жаңа тапсырманың бар екенін растау үшін барлық рөлдік тағайындауларды алыңыз.
$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
Күтілетін нәтиже:
roleAssignmentId roleDefinitionId scope principalType
---------------- ---------------- ----- -------------
a1b2c3d4-e5f6-7890-abcd-ef1234567890 ff954d61-a89a-4fbe-ace9-01c367b89f87 /tenants/<your-tenant-id> ApplicationUser
Power Platform API анықтамасы: Рөлге негізделген қолжетімділікті бақылау - Рөлдерді тағайындау тізімі