我正在尝试使用 Azure 自动化 Runbook 使用 Azure AD 凭据对 Azure SQL 数据库运行查询:
$cred = Get-AutomationPSCredential -Name 'SqlAdminUser'
$Username = $cred.UserName
$Password = $cred.GetNetworkCredential().Password
$Server = 'server.database.windows.net'
$Port = 1433
$cxnString = "Server=tcp:$Server,$Port;Database=$Database;Authentication=Active Directory Password;UID=$UserName;PWD=$Password;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;"
$cxn = New-Object System.Data.SqlClient.SqlConnection($cxnString)
$cxn.Open()
$cmd = New-Object System.Data.SqlClient.SqlCommand($query, $cxn)
$cmd.CommandTimeout = 120
$cmd.ExecuteNonQuery()
$cxn.Close()
我收到以下错误:
不支持关键字:“身份验证”。
所以似乎 Azure 自动化没有安装ADAL SQL 库?有什么简单的方法可以解决这个问题(并且仍然使用 Azure AD 帐户进行连接)?
我用这个例子作为起点。