在 中创建 permissionGrantConditionSet 包括 permissionGrantPolicy 的集合

命名空间:microsoft.graph

重要

Microsoft Graph /beta 版本下的 API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。

添加在权限授予 策略中包含权限 授予事件的条件。 为此,可将 permissionGrantConditionSet 添加到 permissionGrantPolicyinclude 集合。

此 API 可用于以下国家级云部署

全局服务 美国政府 L4 美国政府 L5 (DOD) 由世纪互联运营的中国

权限

为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考

权限类型 最低特权权限 更高特权权限
委派(工作或学校帐户) Policy.ReadWrite.PermissionGrant 不可用。
委派(个人 Microsoft 帐户) 不支持。 不支持。
应用程序 Policy.ReadWrite.PermissionGrant 不可用。

重要

在具有工作或学校帐户的委托方案中,必须为登录用户分配受支持的Microsoft Entra角色或具有支持的角色权限的自定义角色。 此操作支持以下最低特权角色。

  • 应用程序管理员
  • 云 应用程序管理员

HTTP 请求

POST /policies/permissionGrantPolicies/{id}/includes

请求标头

名称 说明
Authorization 持有者 {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"
  }
}