Azure AD B2C中用issuerAssignedId查询用户报错,如何修复Graph查询?
修复Azure AD B2C中Microsoft Graph用户查询的错误
在Azure AD B2C环境下,查询用户的identities属性时,必须同时指定issuer和issuerAssignedId两个字段的匹配条件——因为同一个issuerAssignedId可能关联不同的身份提供者(比如本地账户、Google、Facebook等),仅过滤issuerAssignedId会导致查询不被支持,也就是你遇到的Request_UnsupportedQuery错误。
正确的查询格式
根据用户身份的类型,调整issuer的值:
- 本地账户:使用你的B2C租户域名(格式如
yourtenant.onmicrosoft.com) - 社交账户:使用对应身份提供者的域名(比如Gmail是
gmail.com,Google是google.com)
本地账户查询示例
GET https://graph.microsoft.com/v1.0/users/?$filter=identities/any(c:c/issuer eq 'yourtenant.onmicrosoft.com' and c/issuerAssignedId eq 'thedivision5623u12@gmail.com')
社交账户(Gmail)查询示例
GET https://graph.microsoft.com/v1.0/users/?$filter=identities/any(c:c/issuer eq 'gmail.com' and c/issuerAssignedId eq 'thedivision5623u12@gmail.com')
注意事项
将示例中的yourtenant.onmicrosoft.com替换为你实际的B2C租户域名,或者根据目标用户的身份提供者选择对应的issuer值。
内容的提问来源于stack exchange,提问作者Allan Xu
相关产品推荐
相关产品推荐

