Создание приложения субъекта-службы с помощью API (предварительная версия)
[Данная статья посвящена предварительному выпуску и может быть изменена.]
Аутентификация с помощью имени пользователя и пароля часто не идеальна, особенно с появлением многофакторной аутентификации. В таких случаях предпочтительна аутентификация субъекта-службы (или потока учетных данных клиента). Вы можете пройти проверку подлинности с помощью субъекта-службы, зарегистрировав новое приложение субъекта-службы в собственном клиенте Microsoft Entra, затем зарегистрировав это же приложение в Power Platform.
Заметка
Интерфейс командной строки Power Platform CLI обеспечивает более простой способ. Дополнительные сведения см. в статье Создание приложения субъекта-службы с помощью интерфейса командной строки PAC CLI
Регистрация приложения для управления администратором
Во-первых, клиентское приложение необходимо зарегистрировать в вашем клиенте Microsoft Entra. Чтобы узнать, как это сделать, ознакомьтесь со статьей Аутентификация для API-интерфейсов Power Platform.
После регистрации вашего клиентского приложения в Microsoft Entra ID оно также должно быть зарегистрировано в Microsoft Power Platform. Сегодня это невозможно сделать через центр администрирования Power Platform; это должно быть сделано программно через API Power Platform или PowerShell для администраторов Power Platform. Субъект-служба не может зарегистрировать себя. По замыслу, администратор, использующий контекст имени пользователя и пароля, должен зарегистрировать приложение. Это ограничение гарантирует, что только тот, кто является администратором для приложения клиента, может зарегистрировать приложение.
Чтобы зарегистрировать новое приложение для управления, используйте следующий запрос с токеном носителя, полученным с использованием аутентификации по имени пользователя и паролю:
PUT https://api.bap.microsoft.com/providers/Microsoft.BusinessAppPlatform/adminApplications/{CLIENT_ID_FROM_AZURE_APP}?api-version=2020-10-01
Host: api.bap.microsoft.com
Accept: application/json
Authorization: Bearer eyJ0eXAiOi...
Делайте запросы в качестве субъекта-службы
Теперь, когда субъект-служба зарегистрирована в Microsoft Power Platform, вы можете пройти аутентификацию как сам субъект-служба. Используйте следующий запрос, чтобы запросить список ваших приложений для управления. Этот запрос может использовать токен носителя, полученный с помощью потока аутентификации учетных данных клиента:
GET https://api.bap.microsoft.com/providers/Microsoft.BusinessAppPlatform/adminApplications?api-version=2020-10-01
Host: api.bap.microsoft.com
Accept: application/json
Authorization: Bearer eyJ0eXAiOi...
Создание приложения субъекта-службы с помощью интерфейса командной строки PAC CLI
Используйте Microsoft Power Platform CLI (PAC CLI), чтобы добавить приложение Microsoft Entra ID (SPN) и связанного пользователя приложения в среду Dataverse. Команда admin create-service-principal
создает приложение Microsoft Entra ID (SPN), а также регистрирует его в Microsoft Power Platform.
pac admin create-service-principal --environment <environment id>
Узнайте больше о команде pac admin create-service-principal и о том, как установить PAC CLI.
Ограничения субъектов-служб
В настоящее время аутентификация субъекта-службы работает для управления средой, настройками клиента и управления Power Apps. API, связанные с Flow, поддерживаются для проверки подлинности субъекта-службы в ситуациях, когда лицензия не требуется, поскольку невозможно назначить лицензии удостоверениям субъектов-служб в Microsoft Entra ID.
Приложения субъекта-службы обрабатываются в Power Platform так же, как и обычные пользователи с назначенной ролью администратора Power Platform. Детальные роли и разрешения не могут быть назначены для ограничения их возможностей. Приложение не получает никакой специальной роли, назначенной в Microsoft Entra ID, поскольку именно так службы платформы обрабатывают запросы, выполняемые субъектами-службами.