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

关于Microsoft Graph无法获取用户Windows域AD组的技术咨询

如何通过Microsoft Graph API获取Windows域Active Directory组列表

好问题!你完全可以拿到Windows域AD组的列表,但得调整下当前的Graph API调用方式——你现在用的memberOf端点搭配旧版API(1.6)默认只返回纯Azure AD组,而域AD组需要针对性处理,具体分两种场景:

场景1:域AD已通过Azure AD Connect同步到Azure AD

这是最普遍的情况,只要同步完成,就能通过Graph API获取域AD组,按以下步骤调整:

  • 升级API版本:api-version=1.6太老旧了,建议改用稳定版v1.0,调用地址改成:
    GET {graphResourceUri}/v1.0/me/memberOf?$filter=onPremisesSyncEnabled eq true
    
    这里的$filter参数会帮你过滤掉纯Azure组,只保留从本地域AD同步过来的组(这类组的onPremisesSyncEnabled属性为true)。
  • 确认权限配置:你的应用需要有足够权限,比如委派权限User.Read.All(需用户同意)或应用权限Directory.Read.All(需管理员同意),务必确保权限已正确授予并生效。

之前调用返回空数组,除了用户没加入Azure组外,也可能是旧版API未返回同步过来的域组,升级版本加筛选后应该就能得到预期结果。

场景2:域AD未同步到Azure AD

这种情况下,Microsoft Graph API无法直接访问本地域AD资源——因为Graph API是针对Azure AD云端服务的接口,没法直接穿透到本地域控制器。这时候你需要直接查询本地域AD,比如用PowerShell的Get-ADGroupMember命令,或者通过ADSI编写代码来获取组列表。

总结一下:只要域AD组同步到了Azure AD,调整Graph API调用就能实现需求;如果没同步,就得换本地查询的方式。

内容的提问来源于stack exchange,提问作者Post Impatica

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:49:53