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


Создание accessPackageResourceRequest

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

Создайте объект accessPackageResourceRequest , чтобы запросить добавление ресурса в каталог пакетов для доступа, обновление ресурса или удаление ресурса из каталога. Ресурс должен быть включен в каталог пакетов доступа, прежде чем роль этого ресурса можно будет добавить в пакет доступа.

  • Чтобы добавить группу Microsoft Entra в качестве ресурса в каталог, задайте для параметра requestTypeadminAddзначение и значение , resource представляющее ресурс. Значение свойства originSystem в resource должно быть, AadGroup а значение originId является идентификатором группы.
  • Чтобы добавить приложение Microsoft Entra в качестве ресурса в каталог, задайте для параметра requestTypeadminAddзначение и значение , resource представляющее ресурс. Значение свойства originSystem в resource должно быть, AadApplication а значение originId является идентификатором servicePrincipal.
  • Чтобы добавить сайт SharePoint Online в качестве ресурса в каталог, задайте для параметра requestTypeadminAddзначение и значение , resource представляющее ресурс. Значение свойства originSystem в resource должно быть, SharePointOnline а значение originId — URI сайта.
  • Чтобы удалить ресурс из каталога, присвойте параметру requestType значение adminRemove, а для resource — значение , чтобы содержать id объект ресурса , который требуется удалить. Объект ресурса можно получить с помощью ресурсов списка.

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

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

Разрешения

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

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

Совет

В делегированных сценариях с рабочими или учебными учетными записями вошедшему пользователю также должна быть назначена роль администратора с поддерживаемыми разрешениями роли с помощью одного из следующих параметров:

  • Роль в системе управления правами, где наименее привилегированной ролью является владелец каталога. Это наименее привилегированный вариант.
  • Дополнительные привилегированные Microsoft Entra роли, поддерживаемые для этой операции:
    • Администратор управления удостоверениями

В сценариях только для приложений вызывающему приложению можно назначить одну из предыдущих поддерживаемых ролей вместо EntitlementManagement.ReadWrite.All разрешения приложения. Роль владельца каталога имеет меньшие привилегии EntitlementManagement.ReadWrite.All , чем разрешение приложения.

Кроме того, у вас также должны быть следующие разрешения на добавляемый ресурс:

  • Чтобы добавить группу Microsoft Entra в качестве ресурса в каталог, выполните приведенные далее действия.
  • При использовании делегированных разрешений пользователь, запрашивающий добавление группы, должен быть владельцем группы или ролью каталога, которая позволяет изменять группы.
  • Если используются разрешения приложения, приложению, запрашивающего добавление группы, также должно быть назначено Group.ReadWrite.All разрешение.
  • Чтобы добавить приложение Microsoft Entra в качестве ресурса в каталог, выполните приведенные далее действия.
    • При использовании делегированных разрешений пользователь, запрашивающий добавление приложения, должен быть владельцем приложения или ролью каталога, которая позволяет изменять назначения ролей приложения.
    • При использовании разрешений приложения приложению, запрашивающего добавление servicePrincipal , также должно быть назначено разрешение Application.ReadWrite.All .
  • Чтобы добавить сайт SharePoint Online в качестве ресурса в каталог, выполните приведенные далее действия.

HTTP-запрос

POST /identityGovernance/entitlementManagement/resourceRequests

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

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

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

В тексте запроса укажите представление объекта accessPackageResourceRequest в формате JSON. resource Включите связь с объектом accessPackageResource в рамках запроса и объектом catalog , содержащим его id.

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

Примеры

Пример 1. Создание accessPackageResourceRequest для добавления группы в качестве ресурса

Запрос

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

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminAdd",
  "resource": {
    "displayName": "Test group",
    "originId": "8ab659d0-3839-427d-8c54-5ae92f0b3e2e",
    "originSystem": "AadGroup"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

Отклик

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

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

HTTP/1.1 201 Created
Content-type: application/json

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Пример 2. Создание accessPackageResourceRequest для добавления приложения в качестве ресурса

Запрос

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

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminAdd",
  "resource": {
    "originId": "e81d7f57-0840-45e1-894b-f505c1bdcc1f",
    "originSystem": "AadApplication"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

Отклик

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

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

HTTP/1.1 201 Created
Content-type: application/json

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Пример 3. Создание accessPackageResourceRequest для добавления сайта SharePoint Online в качестве ресурса

Запрос

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

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminAdd",
  "resource": {
    "originId": "https://microsoft.sharepoint.com/sites/Example",
    "originSystem": "SharePointOnline"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

Отклик

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

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

HTTP/1.1 201 Created
Content-type: application/json

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}

Пример 4. Создание accessPackageResourceRequest для удаления ресурса

Запрос

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

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminRemove",
  "resource": {
    "id": "1d0bb962-5bb0-4b16-a488-fda7a788b9ec"
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

Отклик

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

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

HTTP/1.1 201 Created
Content-type: application/json

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminRemove",
  "state": "delivered"
}

Пример 5. Создание accessPackageResourceRequest для обновления приложения как ресурса с атрибутами

В следующем примере показан запрос на обновление ресурса в каталоге для приложения, которое уже было добавлено в качестве ресурса, с двумя атрибутами.

Запрос

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

POST https://graph.microsoft.com/v1.0/identityGovernance/entitlementManagement/resourceRequests
Content-type: application/json

{
  "requestType": "adminUpdate",
  "resource": {
    "originId": "e81d7f57-0840-45e1-894b-f505c1bdcc1f",
    "originSystem": "AadApplication",
    "attributes": [
      {
        "destination": {
          "@odata.type": "microsoft.graph.accessPackageUserDirectoryAttributeStore"
        },
        "name": "officeLocation",
        "source": {
          "@odata.type": "#microsoft.graph.accessPackageResourceAttributeQuestion",
          "question": {
            "@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
            "sequence": 1,
            "isRequired": true,
            "isAnswerEditable": true,
            "text": "What office do you work at?",
            "isSingleLineQuestion": true,
            "regexPattern": "[a-zA-Z]+[a-zA-Z\\s]*"
          }
        }
      },
      {
        "destination": {
          "@odata.type": "microsoft.graph.accessPackageUserDirectoryAttributeStore"
        },
        "name": "extension_e409fedc08ab4807a9eb53ebc0d6cc9f_Expense_CostCenter",
        "source": {
          "@odata.type": "#microsoft.graph.accessPackageResourceAttributeQuestion",
          "question": {
            "@odata.type": "#microsoft.graph.accessPackageTextInputQuestion",
            "isRequired": false,
            "text": "What is your cost center number?",
            "sequence": 0,
            "isSingleLineQuestion": true,
            "regexPattern": "[0-9]*"
          }
        }
      }
    ]
  },
  "catalog": {
    "id": "beedadfe-01d5-4025-910b-84abb9369997"
  }
}

Отклик

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

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

HTTP/1.1 201 Created
Content-type: application/json

{
  "id": "acc2294e-f37f-42d3-981d-4e83847ed0ce",
  "requestType": "adminAdd",
  "state": "delivered"
}