使用Graph API获取Endpoint Manager RBAC角色成员遇文档错误求助
解决Endpoint Manager RBAC角色组成员获取问题
正确的API调用方式
- 批量获取指定角色的所有成员:
用这个请求可以一次性拿到目标角色下所有分配的成员信息:GET https://graph.microsoft.com/v1.0/deviceManagement/roleAssignments?$filter=roleDefinitionId eq '{你的角色ID}'&$expand=principalMembers - 单独获取某条角色分配的成员:
如果你已经拿到了roleAssignment的ID,直接调用这条接口即可:GET https://graph.microsoft.com/v1.0/deviceManagement/roleAssignments/{你的分配ID}?$expand=principalMembers
为什么之前的调用会报错?
你之前用的deviceManagement/roleDefinitions/{roleID}/roleAssignments/{assignmentID}路径确实存在问题,当前Graph API不支持这种嵌套的按ID访问方式,必须直接对deviceManagement/roleAssignments资源进行操作,这也是官方文档存在的疏漏点。
额外注意事项
- 确保你的应用已配置
DeviceManagementRBAC.Read.All(或更高权限)的应用权限,否则会触发权限不足的错误。 - 如果需要同时获取角色定义的详细信息,可以在请求中同时展开
roleDefinition:GET https://graph.microsoft.com/v1.0/deviceManagement/roleAssignments?$filter=roleDefinitionId eq '{你的角色ID}'&$expand=principalMembers,roleDefinition
内容的提问来源于stack exchange,提问作者Andrew Draper
相关产品推荐
相关产品推荐

