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

Azure AD OAuth Token无角色/范围信息,求排查解决方法

问题分析与解决方案

核心原因

你使用的是客户端凭证授权流(client_credentials),该模式下Token不会自动包含应用角色或权限,必须完成以下关键配置才能让这些信息出现在Token中。

缺失的配置项

1. 为调用方应用分配应用角色

你已在API应用中创建了应用角色,但未将这些角色分配给发起请求的客户端应用(即client_id对应的应用):

  • 进入Azure AD的API应用注册 → 左侧菜单「应用角色」
  • 找到你创建的应用角色,点击「分配用户/组」
  • 选择发起curl请求的客户端应用,完成角色分配

2. 为应用权限授予管理员同意

如果添加了Graph或其他API的额外应用权限:

  • 进入客户端应用注册 → 左侧菜单「API权限」
  • 检查你添加的额外权限,点击「授予管理员同意」(需全局管理员或权限管理员操作)
  • 注意:客户端凭证流仅支持应用权限,不支持委托权限

3. 确认Scope的有效性

你使用的scope=api://<application id>/.default是正确的,该Scope会自动包含所有已授予客户端的应用权限和分配的应用角色,但前提是完成上述两步配置。

验证结果

重新获取Token并解码后,应能看到:

  • 应用角色会出现在roles字段中
  • 已授予的应用权限会通过scp或roles字段返回(取决于权限类型)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 18:15:38