Jenkins:屏蔽Web部署批处理命令的密码

时间:2017-12-13 21:23:45

标签: windows batch-file jenkins webdeploy password-encryption

我没有将密码硬编码到批处理命令窗口,而是想使用工具隐藏我的凭据。

凭据硬编码时,凭据正常工作但我在尝试使用密码设置时收到此错误,"屏蔽密码和正则表达式"和"使用秘密测试或文件"秘密文字: Masking and Expressions Secret text

Error: The remote server returned an error: (401) Unauthorized.

我的密码在批处理命令中被正确屏蔽:

C:/"Program Files (x86)/IIS/Microsoft Web Deploy V3/msdeploy.exe" -verb:sync -source:package="webApp1/webApp1/obj/DEBUG/_PublishedWebsites/webApp1_Package/webApp1.zip" -dest:auto,computerName=https://MYCIServer:8172/msdeploy.axd,username=DOMAIN\UserName,password=IIS_Pass,authType=basic -allowUntrusted

以下是它在日志中的显示方式:

username=DOMAIN\UserName,password=************,authType=basic

是否"屏蔽密码和正则表达式(以及启用全局密码),将构建密码作为环境变量注入或使用秘密文本或文件"使用批处理命令?如果是,请告诉我您为实现这一目标而采取的步骤。

1 个答案:

答案 0 :(得分:2)

IIS_Pass应该是一个环境变量。在bash脚本中,它将是$ IIS_Pass,而我认为对于Windows,它将是密码="%IIS_Pass%"

C:/"Program Files (x86)/IIS/Microsoft Web Deploy V3/msdeploy.exe" -verb:sync -source:package="webApp1/webApp1/obj/DEBUG/_PublishedWebsites/webApp1_Package/webApp1.zip" -dest:auto,computerName=https://MYCIServer:8172/msdeploy.axd,username=DOMAIN\UserName,password="%IIS_Pass%",authType=basic -allowUntrusted