Graph API中OR条件查询指定许可证用户失败,求修正
修正Graph API查询已分配指定许可证用户的语句
原查询无法正常运行的核心原因是逻辑表达式写法不符合Graph API的筛选规则,正确写法需将两个许可证的判断拆分到各自的any()表达式中,再通过OR连接。
修正后的查询语句
https://graph.microsoft.com/v1.0/users?$filter=assignedLicenses/any(x:x/skuId eq '18181a46-0d4e-45cd-891e-60aabd171b4e') or assignedLicenses/any(x:x/skuId eq '06ebc4ee-1bb5-47dd-8120-11324bc54e06')
关键说明
- 原语句将OR条件放在单个
any()内部,虽符合OData语法规范,但Graph API对该写法的支持存在限制,拆分后即可正常执行 - skuId为GUID类型,必须用单引号包裹
- 调用API时需持有
User.Read.All或Directory.Read.All权限,否则会返回权限不足错误
内容的提问来源于stack exchange,提问作者Shaktisinh Vaghela
相关产品推荐
相关产品推荐

