使用Microsoft Entra访问令牌连接Azure SQL Database的令牌获取问题
解决Azure SQL Database令牌获取报错AADSTS650057的方法
你遇到的AADSTS650057错误,核心原因是你的Microsoft Entra应用注册里未添加Azure SQL Database对应的权限,导致请求的资源https://database.windows.net不被认可。按以下步骤操作即可解决:
- 登录Microsoft Entra管理中心,定位到你的应用注册(ID:a5564c45-c00e-45ba-8e72-d1e05bdefa34)
- 进入「API权限」页面,点击「添加权限」
- 在弹窗里切换到「我的组织使用的API」标签,直接输入错误提示里的资源APP ID:
022907d3-0f1b-48f7-badc-1ba6abab6d66,搜索后就能找到Azure SQL Database的API - 根据你的授权场景选择对应权限:
- 若用应用自身身份访问(客户端凭据流):添加应用权限分类下的Azure SQL Database相关权限,添加后点击「授予管理员同意」
- 若用用户身份访问(委托流):添加委托权限分类下的
user_impersonation权限
- 重新获取令牌时,使用正确的scope:
- 客户端凭据流用:
https://database.windows.net/.default - 委托流用:
https://database.windows.net/user_impersonation
- 客户端凭据流用:
完成以上操作后,就能获取到符合要求的访问令牌,正常连接Azure SQL Database。
内容的提问来源于stack exchange,提问作者Nostradamus
相关产品推荐
相关产品推荐

