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

如何通过Microsoft Graph API从用户资料获取组织(租户)ID

解决方案:获取用户的组织唯一标识

嘿,我来帮你理清这个获取组织唯一标识的问题,其实答案就在你手里的access_token里,不用额外申请权限也能搞定,下面分点给你说清楚:

1. 直接从Access Token提取组织ID(最可靠、无需额外权限)

你通过jwt.ms解码的access_token里已经包含了tid字段——这个就是租户ID,也就是Azure AD中组织的唯一标识。每个Azure AD租户都有一个独一无二的tid,它是Azure AD颁发token时自动包含的标准声明,不需要额外申请任何权限就能获取。

你完全可以在后端解码access_token(或者前端在安全的场景下解码),直接读取tid值作为组织的唯一标识,这比调用Graph API或者解析邮箱域名要靠谱得多。

2. 不建议用邮箱域名作为组织唯一标识

虽然你能从用户邮箱里提取域名(比如COMPANYDOMAIN.COM),但这种方式存在明显的风险:

  • 多个Azure AD租户可能配置同一个自定义域名(比如通过B2B协作或者域名转移的场景);
  • 部分用户的邮箱可能属于个人域名或者第三方域名,和当前组织没有绑定关系;
  • 组织可能有多个域名,你无法确定哪个是核心的唯一标识。

所以用域名作为组织唯一标识的方案不可靠,不推荐使用。

3. 如果需要更多组织详情,才需要调用额外API并申请权限

如果你除了组织ID,还需要获取组织的名称、官方域名、地址等详细信息,可以调用Microsoft Graph的Organization接口:

GET https://graph.microsoft.com/v1.0/organization

这个接口需要申请Organization.Read.All权限(委托权限或应用权限),但如果只是需要组织唯一标识,完全没必要走这一步,直接用token里的tid就够了。

总结一下:最简便可靠的方式就是解码access_token读取tid字段,不需要额外权限,也不用调用额外的Graph API接口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 06:28:03