小编red*_*o85的帖子

Azure DevOps Pipeline 因密码特殊字符而失败

我正在使用 azure devops 构建项目服务器解决方案。

在我的发布管道中,我有多个 powershell 脚本,它们需要用户凭据作为参数。密码保存在 DevOps 中的一个秘密变量中,并包含一个单引号。

Password: abcd'efgh
Run Code Online (Sandbox Code Playgroud)

这会导致管道抛出错误:“字符串缺少终止符:'。”

当我用双引号将密码硬编码到管道中时,脚本会完美执行。

Argument: -password "abcd'efgh"
Run Code Online (Sandbox Code Playgroud)

当我将 DevOps 秘密变量放在双引号中时,脚本会执行,但在尝试在服务器上进行身份验证时出现错误,可能是因为传递的密码是“***”。

Argument: -password "$(passwordVariable)"
Run Code Online (Sandbox Code Playgroud)

这是管道正在执行的脚本的相关部分。任何帮助是极大的赞赏。

param(
  $siteUrl,
  $username,
  $password
)
$encpassword = convertto-securestring -String $password -Force
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password
Connect-PnPOnline -Url $siteUrl -Credentials $cred
Run Code Online (Sandbox Code Playgroud)

如何将密码输入脚本?

azure-devops azure-pipelines

6
推荐指数
1
解决办法
1371
查看次数

标签 统计

azure-devops ×1

azure-pipelines ×1