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

Azure登录报错AADSTS900144提示缺client_id但URL已携带参数问题咨询

报错触发原因

  • 核心问题是redirect_uri配置错误:你将回调地址设为了Azure AD本身的/oauth2/v2.0/authorize端点,导致首次授权请求触发后,系统会自动重定向到该端点,重定向过程会丢失原始请求的查询参数,甚至会被校验逻辑判定为非法POST请求,因此抛出「请求体缺少client_id」的误报。
  • 隐式流(response_type=id_token)的参数配置不符合规范:如果<CLIENTID>替换后存在多余空格、特殊字符未转义,或者与Azure AD应用注册的客户端ID不一致,会导致参数解析失败,系统无法识别到查询参数里的client_id,就会要求从请求体传递该参数。
  • Azure AD应用注册的配置不匹配:如果应用没有开启隐式流权限,或者redirect_uri没有提前添加到应用注册的重定向URI白名单中,也会触发参数校验异常。

解决方法

  • 修正redirect_uri取值:将该参数替换为你自己的业务应用回调地址,必须和Azure AD应用注册「身份验证」页下的「重定向URI」列表中的配置完全一致,不可使用Azure AD的授权端点作为回调地址。修正后的请求URL示例:
    https://login.microsoftonline.com/<TENENT>/oauth2/v2.0/authorize?response_type=id_token&state=<SOMESTATE>&client_id=<CLIENTID>&scope=<SCOPE>&redirect_uri=<你的应用实际回调地址>
  • 校验参数取值:替换所有<>包裹的占位符后,确认client_id为Azure AD应用注册生成的「应用程序(客户端)ID」,无多余空格、特殊字符,无需保留<>符号。
  • 开启隐式流权限:进入Azure AD应用注册的「身份验证」页,在「隐式授权和混合流」模块下勾选「ID令牌(用于隐式流和混合流)」选项并保存。
  • 排查scope配置问题:如果修改后仍报错,可先将scope参数替换为openid profile email默认权限,排除自定义scope配置错误的影响。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 11:51:01