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


Создание unifiedRoleAssignment

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Создайте объект unifiedRoleAssignment .

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Для вызова этого API требуется одно из следующих разрешений. Дополнительные сведения, включая сведения о том, как выбрать разрешения, см. в статье Разрешения.

Для поставщика каталога (Microsoft Entra ID)

Тип разрешения Разрешения (в порядке повышения привилегий)
Делегированные (рабочая или учебная учетная запись) RoleManagement.ReadWrite.Directory
Делегированные (личная учетная запись Майкрософт) Не поддерживается.
Приложение RoleManagement.ReadWrite.Directory

Важно!

В делегированных сценариях с рабочими или учебными учетными записями вошедшему пользователю должна быть назначена поддерживаемая роль Microsoft Entra или настраиваемая роль с разрешением поддерживаемой роли. Администратор привилегированных ролей — это наименее привилегированная роль, поддерживаемая для этой операции.

Для поставщика управления правами

Тип разрешения Разрешения (в порядке повышения привилегий)
Делегированные (рабочая или учебная учетная запись) EntitlementManagement.ReadWrite.All
Делегированные (личная учетная запись Майкрософт) Не поддерживается.
Для приложений Не поддерживается.

Для поставщика Exchange Online

Тип разрешения Разрешения (в порядке повышения привилегий)
Делегированные (рабочая или учебная учетная запись) RoleManagement.ReadWrite.Exchange
Делегированные (личная учетная запись Майкрософт) Не поддерживается.
Приложение RoleManagement.ReadWrite.Exchange

HTTP-запрос

Создайте назначение ролей для поставщика каталогов:

POST /roleManagement/directory/roleAssignments

Создайте назначение ролей для поставщика управления правами:

POST /roleManagement/entitlementManagement/roleAssignments

Создайте назначение ролей для поставщика Exchange Online:

POST /roleManagement/exchange/roleAssignments

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.

Текст запроса

В тексте запроса укажите представление объекта unifiedRoleAssignment в формате JSON.

При создании unifiedRoleAssignment можно указать следующие свойства.

Свойство Тип Описание
appScopeId String Обязательный. Идентификатор конкретного приложения область, когда область назначения зависит от приложения. Область назначения определяет набор ресурсов, доступ к которым предоставлен субъекту. Области приложения — это области, которые определяются и понимаются только приложением ресурсов.

Для поставщика управления правами используйте это свойство, чтобы указать каталог, например /AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997.

Необходимо указать appScopeId или directoryScopeId .
directoryScopeId String Обязательный. Идентификатор объекта каталога, представляющего область назначения. Область назначения определяет набор ресурсов, доступ к которым предоставлен субъекту. Области каталога — это общие области, хранящиеся в каталоге, которые понимаются несколькими приложениями, в отличие от областей приложений, которые определяются и понимаются только приложением ресурсов.

Для поставщика каталога (Microsoft Entra ID) это свойство поддерживает следующие форматы:
  • /для область на уровне клиента
  • /administrativeUnits/{administrativeunit-ID}для область в административную единицу
  • /{application-objectID}для область в приложение ресурсов
  • /attributeSets/{attributeSet-ID}, чтобы область в набор атрибутов

    Для поставщика управления правами для / область на уровне клиента. Чтобы область к каталогу пакетов для доступа, используйте свойство appScopeId.

    Для поставщика Exchange Online это свойство поддерживает следующие форматы:
  • /для область на уровне клиента
  • /Users/{ObjectId of user}для область назначения роли конкретному пользователю
  • /AdministrativeUnits/{ObjectId of AU}для область назначения роли административной единице
  • /Groups/{ObjectId of group}, чтобы область ролью, чтобы направить членов определенной группы

    Необходимо указать appScopeId или directoryScopeId .
  • principalId String Обязательный. Идентификатор субъекта, которому предоставляется назначение.
    roleDefinitionId String Идентификатор unifiedRoleDefinition, для назначения. Только для чтения. Поддерживает $filter (eq, in).

    Отклик

    В случае успешного выполнения этот метод возвращает код отклика 201 Created и новый объект unifiedRoleAssignment в теле отклика.

    Примеры

    Пример 1. Создание назначения ролей с помощью область клиента

    Запрос

    Ниже показан пример запроса. Обратите внимание на использование roleTemplateId для roleDefinitionId. roleDefinitionId может быть идентификатором шаблона для всей службы или идентификатором roleDefinitionId для каталога.

    POST https://graph.microsoft.com/beta/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    { 
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "c2cf284d-6c41-4e6b-afac-4b80928c9034",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/"
    }
    

    Отклик

    Ниже показан пример отклика.

    Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "YUb1sHQtUEyvox7IA_Eu_mm3jqnUe4lEhvatluHVi2I-1",
        "roleDefinitionId": "c2cf284d-6c41-4e6b-afac-4b80928c9034",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/"
    }
    

    Пример 2. Создание назначения ролей с помощью административной единицы область

    Запрос

    В следующем примере роль администратора пользователей назначается субъекту с административной единицей область.

    POST https://graph.microsoft.com/beta/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    {
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/administrativeUnits/5d107bba-d8e2-4e13-b6ae-884be90e5d1a"
    }
    

    Отклик

    Ниже показан пример отклика.

    Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "BH21sHQtUEyvox7IA_Eu_mm3jqnUe4lEhvatluHIWb7-1",
        "roleDefinitionId": "fe930be7-5e62-47db-91af-98c3a49a38b1",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/administrativeUnits/5d107bba-d8e2-4e13-b6ae-884be90e5d1a"
    }
    

    Пример 3. Создание назначения роли с набором атрибутов область

    Запрос

    В следующем примере роль администратора назначения атрибутов назначается субъекту с набором атрибутов область с именем Engineering. Дополнительные сведения о Microsoft Entra настраиваемых атрибутах безопасности и область набора атрибутов см. в статье Управление доступом к настраиваемым атрибутам безопасности в Microsoft Entra ID.

    POST https://graph.microsoft.com/beta/roleManagement/directory/roleAssignments
    Content-type: application/json
    
    {
        "@odata.type": "#microsoft.graph.unifiedRoleAssignment",
        "roleDefinitionId": "58a13ea3-c632-46ae-9ee0-9c0d43cd7f3d",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/attributeSets/Engineering"
    }
    

    Отклик

    Ниже показан пример отклика.

    Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/directory/roleAssignments/$entity",
        "id": "oz6hWDLGrkae4JwNQ81_PU-mYqx8m71OpqEQPdN1u",
        "roleDefinitionId": "58a13ea3-c632-46ae-9ee0-9c0d43cd7f3d",
        "principalId": "f8ca5a85-489a-49a0-b555-0a6d81e56f0d",
        "directoryScopeId": "/attributeSets/Engineering"
    }
    

    Пример 4. Создание назначения ролей с помощью каталога пакетов доступа область

    Запрос

    Ниже показан пример запроса.

    POST https://graph.microsoft.com/beta/roleManagement/entitlementManagement/roleAssignments
    Content-type: application/json
    
    {
        "principalId": "679a9213-c497-48a4-830a-8d3d25d94ddc",
        "roleDefinitionId": "ae79f266-94d4-4dab-b730-feca7e132178",
        "appScopeId": "/AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997"
    }
    

    Отклик

    Ниже показан пример отклика.

    Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/entitlementManagement/roleAssignments/$entity",
        "id": "f3092518-7874-462e-93e9-0cd6c11ffc52",
        "principalId": "679a9213-c497-48a4-830a-8d3d25d94ddc",
        "roleDefinitionId": "ae79f266-94d4-4dab-b730-feca7e132178",
        "appScopeId": "/AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997"
    }
    

    Пример 5. Создание назначения ролей для поставщика Exchange Online с административной единицей область

    Запрос

    Ниже показан пример запроса.

    POST https://graph.microsoft.com/beta/roleManagement/exchange/roleAssignments
    Content-type: application/json
    
    {
        "principalId": "/ServicePrincipals/0451dbb9-6336-42ea-b58f-5953dc053ece",
        "roleDefinitionId": "f66ab1ee-3cac-4d03-8a64-dadc56e563f8",
        "directoryScopeId": "/AdministrativeUnits/8b532c7a-4d3e-4e99-8ffa-2dfec92c62eb",
        "appScopeId": null
    }
    

    Отклик

    Ниже приводится пример отклика.

    HTTP/1.1 201 Created
    Content-type: application/json
    
    {
        "@odata.context": "https://graph.microsoft.com/beta/$metadata#roleManagement/exchange/roleAssignments/$entity",
        "id": "c5dd3ab8-374f-42e9-b163-eb7c54b53755",
        "principalId": "/ServicePrincipals/0451dbb9-6336-42ea-b58f-5953dc053ece",
        "roleDefinitionId": "f66ab1ee-3cac-4d03-8a64-dadc56e563f8",
        "directoryScopeId": "/AdministrativeUnits/8b532c7a-4d3e-4e99-8ffa-2dfec92c62eb",
        "appScopeId": null
    }