问题描述
我试图通过通过查询生成的Bearer令牌连接我的SQL Azure查询
$token= & az account get-access-token --resource=https://database.windows.net/ --query accessToken
从今天开始,它说“用户”登录失败
我没有对环境进行任何重大更改,因为即使在本地脚本也无法正常工作
一旦获得访问令牌,然后连接SQL Server,防火墙设置就可以了。我是数据库的服务器管理员,是否需要进一步检查?
解决方法
我认为令牌已过期。
根据文档az account get-access-token:令牌的有效期至少为5分钟,最长为60分钟。
请尝试重新生成一个新的,然后尝试一下。
,我正在从DevOps管道中执行脚本作为Azure CLI的任务。因此我从Azure门户手动使用了服务主体(连接字符串)作为SQL Server中的管理员。一切正常
当我尝试通过ARM模板通过将Service Principal作为管理员添加为管理员来实现自动化时,它表明它已经在Azure门户中应用了相同的方法,但是在执行管道时却说登录失败
因此,要解决此问题,我不得不在Azure门户中手动将服务主体作为管理员应用