如何通过MS Graph API检查登录用户是否为AAD M365组所有者?
检查登录用户是否为M365组所有者的MS Graph API方案
存在MS Graph API可以实现该需求,以下是具体实现方式:
核心API调用方式
方式1:直接验证用户身份
调用以下API,传入目标M365组ID和当前登录用户ID:
GET /groups/{groupId}/owners/{userId}
- 返回
200 OK:当前用户是该组的所有者 - 返回
404 Not Found:当前用户不是该组的所有者
方式2:过滤组所有者列表
通过$filter参数筛选当前登录用户,判断是否在组的所有者列表中:
GET /groups/{groupId}/owners/microsoft.graph.user?$filter=id eq '{currentUserId}'
如果响应中包含用户数据,则说明该用户是组的所有者。
方式3:从当前用户视角查询
以当前登录用户(/me)为主体,查询其拥有的组是否包含目标M365组:
GET /me/ownedObjects/microsoft.graph.group?$filter=id eq '{groupId}'
响应中存在该组数据即表示当前用户是其所有者。
所需权限
根据使用场景选择对应权限(遵循最小权限原则):
- 委派权限(用户登录场景):
Group.Read.All、Directory.Read.All - 应用权限(后台服务场景):
Group.Read.All、Directory.Read.All
内容的提问来源于stack exchange,提问作者user989988
相关产品推荐
相关产品推荐

