Создание permissionGrantConditionSet в включает коллекцию permissionGrantPolicy

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

Важно!

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

Добавьте условия, при которых событие предоставления разрешений включается в политику предоставления разрешений. Для этого добавьте permissionGrantConditionSet в коллекцию includesобъекта permissionGrantPolicy.

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

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

Разрешения

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

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

Чтобы прочитать конфигурацию, вызывающему пользователю также необходимо назначить хотя бы одну из следующих ролей Microsoft Entra.

  • Администратор приложения
  • Администратор облачного приложения

HTTP-запрос

POST /policies/permissionGrantPolicies/{id}/includes

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

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

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

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

Отклик

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

Примеры

Пример 1. Создание политики предоставления разрешений для клиентских приложений от проверенных издателей

Запрос

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

POST https://graph.microsoft.com/beta/policies/permissionGrantPolicies/{id}/includes
Content-Type: application/json

{
  "permissionType": "delegated",
  "clientApplicationsFromVerifiedPublisherOnly": true
}

Отклик

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

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

HTTP/1.1 200 OK
Content-type: application/json

{
  "id": "75ffda85-9314-43bc-bf19-554a7d079e96",
  "permissionClassification": "all",
  "permissionType": "delegated",
  "resourceApplication": "any",
  "permissions": ["all"],
  "clientApplicationIds": ["all"],
  "clientApplicationTenantIds": ["all"],
  "clientApplicationPublisherIds": ["all"],
  "clientApplicationsFromVerifiedPublisherOnly": true,
  "certifiedClientApplicationsOnly": false,
  "scopeSensitivityLabels": {
      "@odata.type": "#microsoft.graph.allScopeSensitivityLabels",
      "labelKind": "all"
  }
}

Пример 2. Создание политики предоставления разрешений для клиентских приложений, сертифицированных в Microsoft 365

Запрос

В этом примере все делегированные разрешения для всех клиентских приложений, сертифицированных microsoft 365, включены в политику предоставления разрешений. Так как наличие проверенного издателя является необходимым условием для того, чтобы приложение считалось сертифицированным в Microsoft 365, необязательно явно требовать наличия проверенного издателя. Так как все остальные условия из permissionGrantConditionSet были опущены, они принимают значения по умолчанию, которые в каждом случае являются наиболее инклюзивными.

POST https://graph.microsoft.com/beta/policies/permissionGrantPolicies/{id}/includes
Content-Type: application/json

{
  "permissionType": "delegated",
  "certifiedClientApplicationsOnly": true
}

Отклик

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

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

HTTP/1.1 200 OK
Content-type: application/json

{
  "id": "75ffda85-9314-43bc-bf19-554a7d079e96",
  "permissionClassification": "all",
  "permissionType": "delegated",
  "resourceApplication": "any",
  "permissions": ["all"],
  "clientApplicationIds": ["all"],
  "clientApplicationTenantIds": ["all"],
  "clientApplicationPublisherIds": ["all"],
  "clientApplicationsFromVerifiedPublisherOnly": true,
  "certifiedClientApplicationsOnly": true,
  "scopeSensitivityLabels": {
      "@odata.type": "#microsoft.graph.allScopeSensitivityLabels",
      "labelKind": "all"
  }
}