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

Azure APIM使用validate-azure-ad-token验证AD令牌报错401的排查方法

Azure AD令牌验证失败(Invalid Azure AD JWT)排查步骤
  • 校验JWT令牌核心字段

    • 解码令牌(可使用本地工具如jwt.io,避免上传敏感数据),核对以下关键字段:
      • iss:需与策略中tenant-id匹配,注意v1版本格式为https://sts.windows.net/{租户ID}/,v2版本为https://login.microsoftonline.com/{租户ID}/v2.0,版本不匹配会导致验证失败
      • aud:必须和策略<audience>配置的api://$$$$$$完全一致,包括前缀、大小写,无拼写错误
      • exp/nbf:确认令牌未过期(当前时间<exp)且已生效(当前时间>=nbf)
      • tid:租户ID需与策略tenant-id完全一致
  • 核对客户端应用ID匹配性

    • 解码令牌后查看azp(v1/v2通用)或appid(v1)字段,该值必须与策略<client-application-ids>下的$$$$$$完全匹配
    • 若使用的是用户令牌(而非应用服务令牌),azp是用户发起授权的客户端应用ID,需确保该ID已被加入策略的允许列表
  • 确认令牌获取请求参数正确性

    • 检查令牌请求的端点https://login.microsoftonline.com/{租户ID}/oauth2/token中,租户ID与策略配置一致
    • 若使用v1端点,resource参数需设为策略中的audience值(api://$$$$$$);若使用v2端点,scope参数需设为api://$$$$$$/.default
    • 若为用户令牌,确认授权流程(如授权码流)中,用户已被授予访问该audience的权限
  • 检查APIM策略应用范围

    • 确认validate-azure-ad-token策略已应用到目标API、产品或全局级别,确保请求路径会触发该策略执行
    • 排查是否有其他APIM策略修改了Authorization请求头,导致令牌被篡改或丢失
  • 验证令牌签名与颁发者信任

    • 确认APIM所在环境可访问Azure AD元数据端点:https://login.microsoftonline.com/{租户ID}/.well-known/openid-configuration,若APIM部署在虚拟网络内,需确保出站规则允许访问该地址
    • 解码令牌时确认签名算法为RS256,且签名可通过Azure AD公钥验证
  • 检查权限配置完整性

    • 确认策略中配置的应用ID已被授予访问Dynamics 365 API的权限,且应用权限已完成管理员同意,委托权限已完成用户同意
    • 若使用用户令牌,确认用户自身拥有访问Dynamics 365数据的权限,且令牌scp字段包含对应权限声明

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 08:13:15