我在shell脚本中使用curl-u user:password-X post方法从外部触发我的Jenkins作业。在使用这种方法时,我提供了访问Jenkins的凭据。有什么方法可以隐藏或加密凭据吗。?
使用-u
的Curl不支持加密用户名和密码,但您可以用不同的方式隐藏用户名和密码
- 创建一个环境变量在curl命令上使用它,如下所示:
export USERNAME=""
export PASSWORD=""
在之后
curl -u $USERNAME:$PASSWORD -X POST ...
- 使用带有curl命令的.netrc文件
.netrc文件的curl命令选项
-n, --netrc Must read .netrc for user name and password
--netrc-file <filename> Specify FILE for netrc
使用.netrc 的步骤
- 在主目录(~(上创建一个包含内容的.netrc文件
machine jenkins.url
login username
password jenkinsTokenOrPassword
- 调用curl命令
curl -n -X POST ....
注意。如果你不想把.netrc文件放在主目录~
上,那就把它放在其他地方,但一定要让curl知道curl --netrc-file /path/to/.netrc -X POST ...
这样的位置