Azure devops Azure DevOps连接到Azure SQL连接字符串错误

Azure devops Azure DevOps连接到Azure SQL连接字符串错误,azure-devops,azure-sql-database,azure-powershell,Azure Devops,Azure Sql Database,Azure Powershell,我正在尝试使用Azure DevOps创建一个解决方案。我需要在发布/管道中使用Azure Powershell任务创建到Azure SQL数据库的连接。 在我的机器上,我能够通过以下方法实现这一点 function new-connection($ServerIsntance, $DatabaseName) { $obj = New-Object System.Data.SQLClient.SQLCommand $obj.Connection = New-Object Syst

我正在尝试使用Azure DevOps创建一个解决方案。我需要在发布/管道中使用Azure Powershell任务创建到Azure SQL数据库的连接。 在我的机器上,我能够通过以下方法实现这一点

function new-connection($ServerIsntance, $DatabaseName)
{
    $obj = New-Object System.Data.SQLClient.SQLCommand
    $obj.Connection = New-Object System.Data.SQLClient.SQLConnection
    $obj.Connection.ConnectionString = "Server=tcp:$($ServerInstance),1433;Initial Catalog=$($DatabaseName);Persist Security Info=False;User Id=<username>;Password=<password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Authentication=Active Directory Password"
    $obj.Connection.Open()
    .....
}
function新连接($ServerIsntance,$DatabaseName)
{
$obj=新对象System.Data.SQLClient.SQLCommand
$obj.Connection=新对象System.Data.SQLClient.SQLConnection
$obj.Connection.ConnectionString=“Server=tcp:$($ServerInstance),1433;初始目录=$($DatabaseName);持久安全信息=False;用户Id=;密码=;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;身份验证=Active Directory密码”
$obj.Connection.Open()
.....
}
但是,当我在Azure DevOps中使用此代码时,会出现以下异常:
##[error]异常设置“ConnectionString”:“关键字不受支持:'身份验证”。

我尝试使用的数据库是AzureSQL数据库,因此我无法使用
integratedsecurity=true
,因为它不受支持。你知道我该如何面对这个问题吗?


您的代码是否包含
Active Directory密码
之间的空格?如果是这样,请尝试删除它们,因为文档中没有任何空格。

使用相同的脚本进行测试,似乎此问题的原因是代理类型

当我使用Windows代理时(例如vs2017-win2016),脚本可以按预期工作

但是当我使用Linux代理测试时(例如ubuntu 16.04),我可能会遇到同样的问题

因此,您可以检查代理类型(windows或linux)


您可以尝试使用Windows Microsoft hosted agent(例如vs2017-win2016、Windows-2019)。

同样的例外情况##[错误]异常设置“ConnectionString”:“关键字不受支持:身份验证”。“Azure DevOps中的Azure PowerShell似乎不支持连接字符串中的身份验证。@delucaezequiel我以前没有尝试过您尝试执行的操作,但我只是在谷歌上搜索,看看是否可以进一步提供帮助。您是否可以尝试添加类似于此模板的UID和PWD,并查看是否可以连接?