type
status
date
slug
summary
tags
category
icon
password
jenkins在持续部署过程中,经常需要密文存储各种凭据信息,例如harbor账号密码、数据库账号密码、git账号密码等信息,以便jenkins能与这些第三方应用进行集成交互
安装插件
在jenkins的插件管理中安装Credentials Binding插件

安装完成后,在jenkins菜单中可以看到凭证功能菜单

凭据使用
创建凭据
依次点击jenkins——>系统管理——>Credentials——>全局凭据——> Add Credentials


gitee凭据
用于使用用户名和密码验证,详细使用可参考jenkins通过http/https方式拉取gitee代码配置,创建凭据内容如下

SSH凭据
用于ssh密钥验证,创建凭据内容如下
key通过查看jenkins服务器cat .ssh/id_rsa获取。或者填写path to key路径/root/.ssh/id_ras。

k8s集群凭据
用于存储PKCS#12格式的pfx证书文件,用于远程k8s集群配置,创建凭据内容如下
配置思路
jenkins要想连接并操作k8s集群,需要配置授权,请求k8s集群的kube apiserver的请求,可以和kubectl一样利用config文件用作请求的鉴权,默认在~/.kube/config下,也可以单独严格指定权限细节,生成一个jenkins专用的config文件。在jenkins中能够识别的证书文件为PKCS#12 certificate,因此需要先将kubeconfig文件中的证书转换生成PKCS#12格式的pfx证书文件
生成证书
我们可以使用yq命令行工具解析yaml,并提取相关的内容,然后通过base 64解码,最后生成文件安装yq工具,仓库地址:https://github.com/mikefarah/yq
certificate-authority-data——>base 64解码——>ca.crtclient-certificate-data——>base 64解码——>client.crtclient-key-data——>base 64解码——>client.key
转换证书
导入证书
凭据的类型选择Certificate,证书上传刚才生成的cert.pfx证书文件,输入通过openssl生成证书文件时输入的密码

- 作者:NotionNext
- 链接:https://tangly1024.com/article/243db897-8f81-801f-9cee-f1d64aeadd43
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。







