创建或替换 claimsPolicy

命名空间:microsoft.graph

重要

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

创建新的 customClaimsPolicy 对象(如果不存在),或替换现有对象。

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

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

权限

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

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

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

HTTP 请求

PUT /servicePrincipals/{servicePrincipalsId}/claimsPolicy

请求标头

名称 说明
Authorization 持有者 {token}。 必填。 详细了解 身份验证和授权
Content-Type application/json. 必需。

请求正文

在请求正文中,提供 customClaimsPolicy 对象的 JSON 表示形式。

在创建自定义 ClaimsPolicy 时,可以指定以下属性。

属性 类型 说明
includeBasicClaimSet 布尔值 确定基本声明集是否包含在受此策略影响的令牌中。 如果设置为 true,则基本声明集中的所有声明都会在受策略影响的令牌中发出。 默认情况下,基本声明集不在令牌中,除非已在此策略中显式配置。 可选。
includeApplicationIdInIssuer 布尔值 指示是否将应用程序 ID 添加到声明。 它仅与 SAML2.0 以及是否使用自定义签名密钥相关。 默认值为 true。 可选。
audienceOverride String 如果指定,它将替代 WS-Federation 和 SAML2 协议的受众声明的内容。 必须使用自定义签名密钥来应用 audienceOverride,否则将忽略 audienceOverride 值。 提供的值必须采用绝对 URI 的格式。 可选。
索赔 customClaimBase 集合 除了基本声明和核心声明集外,还定义受策略影响的令牌中存在的声明。 可选。

响应

如果成功,此方法在 204 响应正文中返回响应代码和 customClaimsPolicy 对象。

示例

请求

以下示例显示了一个请求。

PUT https://graph.microsoft.com/beta/servicePrincipals/{servicePrincipalsId}/claimsPolicy
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.customClaimsPolicy",
  "includeBasicClaimSet": "Boolean",
  "includeApplicationIdInIssuer": "Boolean",
  "audienceOverride": "String",
  "claims": [
    {
      "@odata.type": "microsoft.graph.customClaim"
    }
  ]
}

响应

以下示例显示了相应的响应。

注意:为了提高可读性,可能缩短了此处显示的响应对象。

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

{
  "@odata.type": "#microsoft.graph.customClaimsPolicy",
  "id": "f914f36d-167e-3fa7-cfa2-355cc5a36689",
  "includeBasicClaimSet": "Boolean",
  "includeApplicationIdInIssuer": "Boolean",
  "audienceOverride": "String",
  "claims": [
    {
      "@odata.type": "microsoft.graph.customClaim"
    }
  ]
}