Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用凭据参数插件访问Jenkins中的凭据_Jenkins_Jenkins Plugins - Fatal编程技术网

使用凭据参数插件访问Jenkins中的凭据

使用凭据参数插件访问Jenkins中的凭据,jenkins,jenkins-plugins,Jenkins,Jenkins Plugins,我的Jenkins box需要通过REST API访问Stash和Jira。为此,我需要存储他们的凭据 我这样做的方式是通过Credentials参数,它要求我输入名称、凭据类型、必需、默认值和描述 我将一个名称定义为CREDENTIAL_参数,在类型中我将其设置为“Username with password”,然后从列表中的默认值中选择一个凭证 接下来在构建部分中,我定义了应该执行的shell,类似于 echo $CREDENTIAL_PARAMETER 我希望得到类似“username:

我的Jenkins box需要通过REST API访问Stash和Jira。为此,我需要存储他们的凭据

我这样做的方式是通过Credentials参数,它要求我输入名称、凭据类型、必需、默认值和描述

我将一个名称定义为CREDENTIAL_参数,在类型中我将其设置为“Username with password”,然后从列表中的默认值中选择一个凭证

接下来在构建部分中,我定义了应该执行的shell,类似于

echo $CREDENTIAL_PARAMETER
我希望得到类似“username:password”的东西作为凭证参数。然而,我得到了一个哈希,我认为这是如何检索用户名和密码的


如何使用bash基于哈希获取凭据?

这是可能的,但需要安装插件。如果没有它,您得到的只是一个可以找到凭据的散列

一旦您拥有凭据,Jenkins将把它们作为会话环境,可以检索

请注意,只有在“生成环境”部分中启用“使用密文或文件”时,凭据才可用


一旦定义了所有内容,用户名和密码可以作为两个不同的字段传递,也可以作为一个由“:”

分隔的字段传递,这对我自己来说只是一个提示,希望这能帮助其他人我将比@Alexandre Santos更深入一点,尽管他的回答非常有用

需要注意的重要一点是,凭证参数凭证绑定之间存在差异

如果您使用的是参数化生成,则可以添加引用凭据绑定的凭据参数。运行构建时,您会注意到有一个环境变量与凭证存储中凭证的GUID相关

要使其真正有用,您必须将“凭据绑定”注入到您的环境中。

前往工作定义的构建环境部分。选中“使用密文或文件”
。这实际上会将秘密注入到构建环境中。前面创建的“凭据参数”可用于选择不同的凭据参数

对于文件,它将把文件放到工作区(?)的某个地方,然后注入一个带有文件完整路径的秘密环境变量


Cloudbees的这篇文章应该对其他部分有所帮助。

一定要读以note开头的句子。我浪费了很多时间,因为我没有读到。在绑定中使用参数表达式时,请确保绑定变量和凭据参数的名称不相同,否则该值将保留为凭据ID。例如,使用机密文件时,生成可能会因
没有此类文件或目录而失败。谢谢,轻快地。我在ExecuteShell区域花了大量时间研究“如何使用jenkins凭据”。你的回答解决了我的问题!你找到解决办法了吗?经历同样的事情,想知道下面的答案是否有用,或者你是否走了不同的路线?