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

更换Azure Graph应用密钥后调用Graph API获取站点遇权限错误排查

问题排查:Azure Graph API AccessDenied 错误(缺少scp/roles声明)

以下是仅更换应用密钥后出现该错误的常见原因:

  • 令牌获取流程与权限类型不匹配
    若原本使用应用权限(Application Permissions)(对应roles声明),更换密钥后误改用了委托权限的授权流程(如授权码流、密码流,对应scp声明),或反之,都会导致令牌缺少所需的权限声明。比如应用权限必须用客户端凭证流(client_credentials)请求令牌,误用其他流程会生成不包含roles的令牌。

  • 新密钥未正确更新到代码/配置中
    虽然创建了新密钥,但可能代码里仍使用旧密钥,或复制新密钥时出现输入错误(如漏字符、带空格),导致获取的令牌无效,自然缺少scp或roles字段。可本地解码令牌(用jwt.ms工具离线解析)确认是否存在对应声明。

  • 权限同步或令牌缓存延迟
    即使权限配置未变,Azure AD的权限同步可能存在延迟,或应用仍在使用缓存的旧令牌。可尝试强制刷新令牌,或在Azure门户重新保存一次应用权限配置触发同步,等待一段时间后再测试。

  • 令牌请求的范围参数错误
    应用权限场景下,必须指定scope为https://graph.microsoft.com/.default;委托权限场景下需指定具体权限范围(如https://graph.microsoft.com/Sites.Read.All)。若scope参数设置错误,会导致令牌不包含对应权限声明。

  • 租户ID/客户端ID配置错误
    更换密钥时若误修改了租户ID或客户端ID,会导致请求指向错误的租户,该租户下的应用无对应权限,从而令牌缺少scp或roles声明。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 20:56:04