Поделиться через


Управляйте ролями администратора с помощью управления привилегированными пользователями в Microsoft Entra

Управляйте ролями администратора с высокими привилегиями в Power Platform центре администрирования с помощью Microsoft Entra управления привилегированными удостоверениями (PIM).

Предварительные требования

  • Удалите старые назначения ролей системного администратора в своих средах. Вы можете использовать сценарии PowerShell для инвентаризации и удаления нежелательных пользователей из роли Системный администратор в одной или нескольких средах Power Platform.

Изменения в поддержке функций

Microsoft больше не назначает роль системного администратора автоматически пользователям с глобальными ролями или ролями администратора уровня обслуживания, такими как администратор Power Platform и администратор Dynamics 365.

Эти администраторы могут по-прежнему входить в центр администрирования Power Platform со следующими привилегиями:

  • Включение или отключение параметров на уровне клиента
  • Просмотр аналитической информации для сред
  • Просмотр данных потребления емкости

Эти администраторы не могут выполнять действия, требующие прямого доступа к данным Dataverse, без лицензии. К примерам таких действий относятся следующие:

  • Обновление роли безопасности для пользователя в среде
  • Установка приложений для среды

Внимание!

Глобальные администраторы, администраторы Power Platform и администраторы службы Dynamics 365 должны выполнить еще один шаг, прежде чем они смогут выполнять действия, требующие доступа к Dataverse. Они должны повысить уровень своих привилегий до роли Системный администратор в среде, к которой им нужно получить доступ. Все действия по повышению уровня привилегий регистрируются в Microsoft Purview.

Если вы используете Privileged Identity Management для получения оперативного доступа к административным ролям в Microsoft Entra ID, а затем самостоятельно повышаете свои права, Microsoft удаляет вашу роль системного администратора , когда срок действия назначения роли в Privileged Identity Management истекает, как правило, через короткий промежуток времени.

Известные ограничения

  • При использовании API, если вызывающая сторона является системным администратором, вызов самоповышения прав возвращает успешный результат вместо указания на то, что пользователь уже вышел.

  • Пользователю, совершающему вызов, должна быть назначена роль администратора арендатора. Полный список пользователей, соответствующих критериям администратора арендатора, см. разделе Изменения в поддержке функций

  • Если вы являетесь администратором Dynamics 365 и среда защищена группой безопасности, вы должны быть участником этой группы безопасности. Это правило не применяется к пользователям с ролями глобального администратора или администратора Power Platform.

  • Пользователь, которому необходимо повысить свой статус, должен вызвать API повышения статуса. Он не позволяет API-вызовам повышать статус другого пользователя.

  • Обходной путь доступен для клиентов, использующих начальный набор центра передовых технологий Microsoft Power Platform. Дополнительные сведения см. в разделе Проблема с PIM и обходной путь № 8119.

  • Назначения ролей через группы не поддерживаются. Убедитесь, что вы назначаете роли непосредственно пользователю.

Самостоятельное повышения уровня привилегий до роли системного администратора

Мы поддерживаем повышение прав с помощью PowerShell или интуитивно понятного интерфейса в центре администрирования Power Platform.

Примечание.

Пользователи, пытающиеся повысить свои права, должны быть глобальными администраторами, администраторами Power Platform или администраторами Dynamics 365. Пользовательский интерфейс в центре администрирования Power Platform недоступен для пользователей с другими ролями администратора Entra ID, и попытка самостоятельного повышения уровня через API PowerShell возвращает ошибку.

Самостоятельное повышение прав через PowerShell

Чтобы самостоятельно повысить уровень привилегий с помощью PowerShell, установите модуль MSAL PowerShell и выполните действия, описанные в этом разделе.

Install-Module -Name MSAL.PS

Этот модуль необходимо установить только один раз. Дополнительные сведения о настройке PowerShell см. в разделе Быстрый запуск веб-API с PowerShell и Visual Studio Code.

Шаг 1. Выполните скрипт для повышения привилегий

В этом скрипте PowerShell вы выполняете следующие действия:

  • Проверка подлинности с помощью API Power Platform.
  • Создание запроса http с идентификатором вашей среды.
  • Запросить повышение статуса, используя Power Platform API.

Найдите и добавьте идентификатор вашей среды.

  1. Войдите в центр администрирования Power Platform.
  2. В области навигации выберите Управление.
  3. На панели Управление выберите Среды.
  4. На странице Окружения выберите окружение, которое вы хотите изменить.
  5. Найдите Идентификатор среды на панели Подробности .
  6. Добавьте уникальный <environment id> в скрипт.

Выполнение сценария

Скопируйте и вставьте скрипт в консоль PowerShell.

# Set your environment ID
$environmentId = "<your environment id>"
$clientId = "<client id of your Microsoft Entra ID application registration>"

Import-Module MSAL.PS

# Authenticate
$AuthResult = Get-MsalToken -ClientId $clientId -Scope 'https://api.powerplatform.com/.default'


$Headers = @{
   Authorization  = "Bearer $($AuthResult.AccessToken)"
   'Content-Type' = "application/json"
} 

$uri = "https://api.powerplatform.com/usermanagement/environments/$environmentId/user/applyAdminRole?api-version=2022-03-01-preview";

try { 

   $postRequestResponse = Invoke-RestMethod -Method Post -Headers $Headers -Uri $uri 
   
} 
   
catch { 
   
   # Dig into the exception to get the Response details. 
   
   Write-Host "Response CorrelationId:" $_.Exception.Response.Headers["x-ms-correlation-id"] 
   
   Write-Host "StatusCode:" $_.Exception.Response.StatusCode.value__  
   
   Write-Host "StatusDescription:" $_.Exception.Response.StatusDescription 
   
   $result = $_.Exception.Response.GetResponseStream() 
   
   $reader = New-Object System.IO.StreamReader($result) 
   
   $reader.BaseStream.Position = 0 
   
   $reader.DiscardBufferedData() 
   
   $responseBody = $reader.ReadToEnd(); 
   
   Write-Host $responseBody 
   
} 
   
$output = $postRequestResponse | ConvertTo-Json -Depth 2 
   
Write-Host $output

Шаг 2. Подтвердите результат

В случае успешного выполнения вы увидите выходные данные, аналогичные следующим. Код "Code": "UserExists" является свидетельством того, что вы успешно повысили привилегии для своей роли.

{
  "errors": [],
  "information": [
    {
      "Subject": "Result",
      "Description": "[\"SyncMode: Default\",\"Instance df12c345-7b56-ee10-8bc5-6045bd005555 exists\",\"Instance df85c664-7b78-ee11-8bc5-6045bd005555 in enabled state\",\"Instance Url found https://orgc1234567.crm.dynamics.com\",\"User found in AD tenant\",\"User in enabled state in AD tenant\",\"SystemUser with Id:11fa11ab-4f75-ee11-9999-6045bd12345a, objectId:aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb exists in instance\"]",
      "Code": "UserExists"
    },
    { ... }
}

Ошибки

Если у вас нет необходимых разрешений, вы можете увидеть сообщение об ошибке.

"Unable to assign System Administrator security role as the user is not either a Global admin, Power Platform admin, or Dynamics 365 admin. Please review your role assignments in Entra ID and try again later. For help, please reach out to your administrator."

Пример скрипта

Remove-RoleAssignmentFromUsers
-roleName "System Administrator" 
-usersFilePath "C:\Users\<My-Name>\Desktop\<names.csv>"
-environmentUrl "<my-name>-environment.crm.dynamics.com"
# Or, include all your environments
-processAllEnvironments $true
-geo "NA"
-outputLogsDirectory "C:\Users\<My-Name>\Desktop\<log-files>"

Самостоятельное повышение прав через центр администрирования Power Platform

Чтобы самостоятельно повысить уровень с помощью центра Power Platform, сделайте следующее:

  1. Войдите в центр администрирования Power Platform.
  2. В области навигации выберите Управление.
  3. На панели Управление выберите Среды.
  4. На странице Окружения выберите окружение, которое вы хотите изменить.
  5. На панели команд выберите Членство , чтобы запросить самостоятельное повышение статуса.
  6. На панели Системные администраторы выберите Добавить меня , чтобы добавить себя к роли системного администратора.