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

使用On-Behalf-Of-Flow获取异常令牌及授权错误问题咨询

On-Behalf-Of流程使用common租户获取异常令牌及AADSTS500202错误排查

问题概述

使用On-Behalf-Of(OBO)流程,以common租户调用/token端点,传入中间层令牌作为assertion,请求范围为openid profile offline_access user.read时,获取到格式异常的访问令牌:正常令牌应以ey...开头,但返回的令牌以EwBoA8l6...开头。该令牌可调用Microsoft Graph的/me端点,但无法调用其他Microsoft API(如GetAllFolders API)。当添加更多请求范围时,触发AADSTS500202错误。

异常令牌示例

{
  token_type: 'Bearer',
  scope: 'User.Read openid profile',
  expires_in: 2148,
  ext_expires_in: 2148,
  access_token: 'EwBoA8l6BAAUAOyDv0l6PcCVu89kmzvqZmkWABkAAcC8ou4ZlNy/KWYLLdVH0vH5mX0MiAuWOx+gxF.............................................................................................................................................................................................................................................9bsbChhpSgTqaDAn2/5e2ol0e+jVUfSFYGNfr45kqBZUoB32Q2HFI1p8wpIdQPOMXfQI=',
  refresh_token: 'M.C105_BAY.-CW5CZWj8ujA1gjI*WNj2u.........................................................................................................................................Ld5Mv40fbrVowHZdbrDkTPFTaKFidgiAN!qZhx472zJNxxnW0iVOFfQqNtU$',
  id_token: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJS.........................................................................................................................................................................................................................83ZPxcotsRG-wGV30ULbnXyI8PFg'
}

扩展范围时的错误信息

{
  error: 'invalid_grant',
  error_description: "AADSTS500202: 用户账户 '{EmailHidden}' 来自外部身份提供商 'live.com',不支持API版本'2.0'。独立于租户的端点不支持Microsoft账户直通用户和来宾用户。\r\n"
}

原因分析

  1. 异常令牌类型:以EwBo...开头的令牌是旧格式的ACS令牌,而非现代JWT令牌。这类令牌仅能有限兼容Microsoft Graph的部分端点(如/me),但不支持其他Microsoft API的调用。
  2. 租户选择错误:common租户是独立于租户的端点,不支持Microsoft账户(live.com身份提供商)用户的OBO流程调用v2.0版本API,这直接触发了AADSTS500202错误。

解决方案

  • 更换租户参数:将请求/token端点时的租户从common替换为:
    • 针对Microsoft账户用户:使用consumers租户
    • 针对组织内用户:使用对应的具体租户ID
  • 指定正确的API范围:请求目标API的专属权限范围,例如调用Exchange Online的GetAllFolders时,使用https://outlook.office.com/Mail.Read这类明确的API权限,而非通用范围
  • 确保获取JWT令牌:如果使用v1.0端点,添加resource参数指定目标API;如果使用v2.0端点,严格遵循范围格式,确保返回以ey...开头的JWT格式访问令牌

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 18:44:53