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

运行PowerShell脚本获取Azure AD令牌时遇AADSTS900144错误

解决Azure AD令牌请求的AADSTS900144错误

问题原因

请求体格式错误,application/x-www-form-urlencoded类型的请求不能用大括号包裹字符串内容,PowerShell会把整个大括号内的内容视为单一参数,导致Azure AD无法识别grant_type参数。

修正后的脚本

将请求体改为哈希表格式,PowerShell会自动完成application/x-www-form-urlencoded的编码:

Invoke-RestMethod -Method POST `
    -Uri 'https://login.microsoftonline.com/<tenantID>/oauth2/v2.0/token' `
    -Header @{'Content-type' = 'application/x-www-form-urlencoded'} `
    -Body @{
        grant_type    = 'client_credentials'
        client_id     = '<clientID>'
        scope         = 'https://graph.microsoft.com/.default'
        client_secret = '<clientSecret>'
    }

额外说明

  • 移除了URL中的api-version=1.6参数,v2.0令牌端点不需要该参数,多余参数可能引发不必要的问题。
  • 使用反引号(`)换行是为了提升脚本可读性,也可以将代码写在同一行。
  • 请将<tenantID>、<clientID>、<clientSecret>替换为实际的租户ID、客户端ID和客户端密钥。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 21:10:36