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

能否用Microsoft Graph API筛选指定应用角色的用户组成员?

解决方案

错误原因

你之前的查询报错是因为members默认返回directoryObject类型集合,而appRoleAssignments是microsoft.graph.user独有的属性,直接在未指定类型的members上引用该属性会导致解析失败。

正确查询语句

要实现需求,需在扩展子组成员时明确指定只处理user类型,并通过any操作符筛选出已分配目标App Role的用户:

https://graph.microsoft.com/v1.0/groups/{GroupA-ID}/members/microsoft.graph.group?$expand=members/microsoft.graph.user($select=id,displayName;$filter=appRoleAssignments/any(a:a/appRoleId eq '{AppRoleB-ID}'))&$select=id,displayName

关键说明

  • 将{GroupA-ID}替换为Group A的实际ID
  • 将{AppRoleB-ID}替换为App Role B的唯一标识ID
  • 使用members/microsoft.graph.user明确限定子组成员类型为用户,确保能访问appRoleAssignments属性
  • 通过appRoleAssignments/any(a:a/appRoleId eq '{AppRoleB-ID}')筛选出拥有指定App Role分配的用户

权限要求

需要至少以下Graph API权限之一(应用权限或委托权限):

  • Group.Read.All
  • User.Read.All

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 00:10:27