You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用B2C Graph API获取Azure用户的目录角色分配信息

解决方案

为什么之前的接口无返回

你调用的旧版Azure AD Graph的appRoleAssignments接口返回的是用户分配的应用程序自定义角色,和你要查询的Azure AD内置目录角色(如全局管理员)属于完全不同的资源范畴,所以无法拿到预期结果。

支持UPN传参的查询接口

目前推荐使用官方主推的Microsoft Graph接口,原生支持直接传入用户UPN代替用户ID作为路径参数:

1. 查询用户直接分配的目录角色

调用示例:

GET https://graph.microsoft.com/v1.0/users/{替换为用户UPN}/memberOf?$select=displayName,roleTemplateId

返回结果中过滤@odata.type为#microsoft.graph.directoryRole的条目,即为用户直接被分配的所有目录角色。

2. 查询用户包含组继承的所有目录角色

如果需要包含用户通过加入「支持角色分配的安全组」间接获得的目录角色,调用以下接口:

GET https://graph.microsoft.com/v1.0/users/{替换为用户UPN}/transitiveMemberOf?$select=displayName,roleTemplateId

同样过滤@odata.type为#microsoft.graph.directoryRole的条目即可。

前置要求

调用上述接口需要提前申请至少Directory.Read.All的API权限,委托权限场景下登录用户需要具备至少「目录读者」的Azure AD权限。


内容的提问来源于stack exchange,提问作者V.Mulik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 18:36:03