Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Пространство имен: microsoft.graph
Назначение роли приложения для этого субъекта-службы пользователю, группе или субъекту-службе клиента.
Роли приложений, назначаемые субъектам-службам, также называются разрешениями приложений. Разрешения приложений можно предоставлять непосредственно в назначениях ролей приложений, а также с помощью интерфейса согласия.
Чтобы предоставить назначение роли приложения, нужны три идентификатора:
-
principalId:idпользователя, группы или объекта servicePrincipal клиента, которому назначается роль приложения. -
resourceId:idресурса servicePrincipal, определяющий роль приложения. -
appRoleId:idобъекта appRole (определенного в субъекте-службе ресурса) для назначения пользователю, группе или субъекту-службе.
Этот API доступен в следующих национальных облачных развертываниях.
| Глобальная служба | Правительство США L4 | Правительство США L5 (DOD) | Китай управляется 21Vianet |
|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
| Тип разрешения | Разрешения с наименьшими привилегиями | Более высокие привилегированные разрешения |
|---|---|---|
| Делегированные (рабочая или учебная учетная запись) | AppRoleAssignment.ReadWrite.All и Application.Read.All | AppRoleAssignment.ReadWrite.All и Directory.Read.All |
| Делегированные (личная учетная запись Майкрософт) | Не поддерживается. | Не поддерживается. |
| Приложение | AppRoleAssignment.ReadWrite.All и Application.Read.All | AppRoleAssignment.ReadWrite.All и Directory.Read.All |
Важно!
Для делегированного доступа с использованием рабочих или учебных учетных записей пользователю, выполнившего вход, необходимо назначить поддерживаемую роль Microsoft Entra или пользовательскую роль, которая предоставляет разрешения, необходимые для этой операции. Эта операция поддерживает следующие встроенные роли, которые предоставляют только минимальные необходимые привилегии:
- Учетные записи синхронизации каталогов — для служб облачной синхронизации Microsoft Entra Connect и Microsoft Entra
- Редактор каталогов
- Администратор гибридных удостоверений
- Администратор управления удостоверениями
- Администратор привилегированных ролей — наименее привилегированная роль, поддерживаемая для ролей приложений Microsoft Graph и Azure AD Graph
- Администратор пользователей
- Администратор приложения
- Администратор облачного приложения
- Администратор идентификатора агента — только для пользователей агента
HTTP-запрос
Вы можете обратиться к субъекту-службе, используя его идентификатор или appId. Id и appId называются идентификатором объекта и идентификатором приложения (клиента) соответственно в регистрациях приложений в Центр администрирования Microsoft Entra.
POST /servicePrincipals/{id}/appRoleAssignedTo
POST /servicePrincipals(appId='{appId}')/appRoleAssignedTo
Заголовки запросов
| Имя | Описание |
|---|---|
| Авторизация | Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации. |
| Content-Type | application/json. Обязательно. |
Текст запроса
В тексте запроса укажите представление JSON для объекта appRoleAssignment.
Отклик
В случае успеха этот метод возвращает в тексте отклика код отклика 201 Created и объект appRoleAssignment.
Примеры
Запрос
Ниже показан пример запроса.
POST https://graph.microsoft.com/v1.0/servicePrincipals/9028d19c-26a9-4809-8e3f-20ff73e2d75e/appRoleAssignedTo
Content-Type: application/json
{
"principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
"resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e",
"appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7"
}
В этом примере {id} и {resourceId-value} оба будут id субъекта-службы ресурса, а {principalId} будет id назначенного пользователя, группы или субъекта-службы клиента.
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#servicePrincipals('9028d19c-26a9-4809-8e3f-20ff73e2d75e')/appRoleAssignedTo/$entity",
"id": "-WmtM5na7Uus0D8kI1yylpU9Mdo0Pb9OoBJvd3T5eKc",
"deletedDateTime": null,
"appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7",
"createdDateTime": "2021-02-15T16:14:59.8643039Z",
"principalDisplayName": "Parents of Contoso",
"principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
"principalType": "Group",
"resourceDisplayName": "Fabrikam App",
"resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e"
}