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

使用MSAL React应用调用端点时出现401 Unauthorized错误

排查方案
  • 验证客户端应用的API权限
    确认React客户端的Azure AD应用已添加自定义API的user_impersonation权限,并且该权限已完成管理员同意(租户级应用必须由管理员操作,否则令牌不会包含对应scope声明)。

  • 检查令牌的有效范围
    获取到accessToken后,用jwt.ms解析令牌,查看scp或roles字段是否包含user_impersonation。如果没有,说明scope配置错误(比如API的client-id填写错误),或者权限未正确同步。

  • 确认自定义API的身份验证配置

    • 确保API的受众(Audience)设置为api://<api-client-id>,与请求scope中的client-id完全一致;
    • 检查API的身份验证中间件是否正确验证令牌的签名、颁发者(issuer)和受众;
    • 若API部署在Azure App Service,确认"身份验证/授权"功能已启用,且允许的令牌颁发者与你的租户匹配。
  • 检查API的CORS设置
    确保API允许React应用的域名(http://localhost:3000)跨域访问,并且允许携带Authorization请求头。错误的CORS配置可能导致请求预检失败,间接表现为权限错误。

  • 确认活跃账号有效性
    登录成功后,必须调用msalInstance.setActiveAccount(account)设置活跃账号,否则getActiveAccount()可能返回无效账号,导致获取的令牌与当前登录用户不匹配。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 15:47:01