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

如何通过Graph API获取Azure AD B2C联合用户的issuerAssignedId

Azure B2C联合用户issuerAssignedId相关问题解答

是否需要为每个身份提供商单独实现适配逻辑?

不需要针对每个身份提供商做单独适配,你可以统一通过Microsoft Graph接口,结合identities属性筛选直接定位目标联合用户,获取对应的issuerAssignedId。

示例查询逻辑如下:

  • 已知用户所属的身份提供商issuer名称时,可通过如下请求精准查询:
    GET https://graph.microsoft.com/v1.0/users?$filter=identities/any(c:c/issuer eq '目标身份提供商的issuer标识' and c/issuerAssignedId eq '用户在该身份提供商的关联标识')&$select=id,identities
    
  • 仅知道用户邮箱等通用信息时,可直接跨所有身份提供商匹配:
    GET https://graph.microsoft.com/v1.0/users?$filter=identities/any(c:c/issuerAssignedId eq 'user@contoso.com')&$select=identities
    

查询返回结果的identities集合中,对应身份提供商条目下的issuerAssignedId就是你需要的值。如果你的租户配置了多个身份提供商,建议查询时加上issuer筛选条件,避免出现同邮箱不同IDP的用户匹配冲突。

注册流程底层获取issuerAssignedId的逻辑

用户通过联合身份提供商完成注册时,Azure B2C会先向你配置的IDP发起标准的OIDC/OAuth或SAML授权请求,用户在IDP侧完成身份验证后,IDP会返回对应的身份凭证给Azure B2C:

  • 若为OIDC协议的IDP,B2C会直接从返回的ID Token的sub声明中提取值,作为该联合用户的issuerAssignedId
  • 若为SAML协议的IDP,B2C会从SAML断言的NameID声明中提取值,作为该联合用户的issuerAssignedId

这个过程是Azure B2C内置的标准协议处理逻辑,无需额外开发对接。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 22:06:05