添加目录角色成员

命名空间:microsoft.graph

重要

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

注意

Microsoft建议使用统一的 RBAC API 而不是此 API。 统一的 RBAC API 提供更多的功能和灵活性。 有关详细信息,请参阅 创建 unifiedRoleAssignment

创建新的目录角色成员。

可以将 directoryRole 的对象 ID 和模板 ID 用于此 API。 内置角色的模板 ID 是不可变的,可以在Microsoft Entra 管理中心上的角色说明中看到。 有关详细信息,请参阅 角色模板 ID

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

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

权限

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

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

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

HTTP 请求

POST /directoryRoles/{role-id}/members/$ref
POST /directoryRoles/roleTemplateId={roleTemplateId}/members/$ref

请求标头

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

请求正文

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

响应

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

示例

示例 1:向用户分配内置角色

请求

以下示例向用户分配内置角色。

POST https://graph.microsoft.com/beta/directoryRoles/0afed502-2456-4fd4-988e-3c21924c28a7/members/$ref
Content-type: application/json

{
    "@odata.id":"https://graph.microsoft.com/beta/users/0f933635-5b77-4cf4-a577-f78a5eb090a2"
}

响应

HTTP/1.1 204 No content

示例 2:将内置角色分配给组

请求

可以使用请求正文中的用户或组等特定资源集,也可以使用泛型 directoryObjects。 此示例演示如何使用 directoryObjects

POST https://graph.microsoft.com/beta/directoryRoles/0afed502-2456-4fd4-988e-3c21924c28a7/members/$ref
Content-type: application/json

{
    "@odata.id":"https://graph.microsoft.com/beta/directoryObjects/2c891f12-928d-4da2-8d83-7d2434a0d8dc"
}

响应

HTTP/1.1 204 No content

示例 3:使用 roleTemplateId 向目录角色添加新成员

请求

在此请求中,将 替换为 88d8e3e3-8f55-4a1e-953a-9b9898b8876b 要分配给用户或目录对象的目录角色的 roleTemplateId 的值。 将 替换为 bb165b45-151c-4cf6-9911-cd7188912848 用户或目录对象的 ID 值。

POST https://graph.microsoft.com/beta/directoryRoles/roleTemplateId=88d8e3e3-8f55-4a1e-953a-9b9898b8876b/members/$ref
Content-type: application/json

{
    "@odata.id": "https://graph.microsoft.com/beta/directoryObjects/bb165b45-151c-4cf6-9911-cd7188912848"
}

响应

HTTP/1.1 204 No content