用途: 存储构建需要与其他系统认证所使用的账户或者密码信息.
Username with password
类型存储Harbor或者其他系统的用户名和密码。GitLab API token
类型存储Gitlab的用户API token。Secret text
类型可以用来存储OpenShift等系统中的token。Certificate
类型可以用户存储证书,例如k8s的用户证书。
添加一个凭据
dashboard --> 系统管理-->凭据-->系统-->全局凭据--add credentials
选择创建凭据类型
解释一下各个类型的作用和使用场景:
Username with password
(用户名和密码)
作用:存储常规的账号密码组合,用于需要用户名+密码认证的场景。
应用场景:
Git仓库访问(如GitHub、GitLab、Bitbucket的HTTP/S协议账号密码)。
数据库连接(如MySQL、PostgreSQL等数据库的账号密码)。
服务器SSH登录(如果目标服务器启用密码登录而非密钥)。
用户名: git-user
密码: your-git-password
Secret text
(加密文本)
作用:存储单行的敏感文本(如API Token、令牌、一次性密钥)。
应用场景:
GitLab API Token:调用GitLab API进行仓库管理或CI/CD操作。
Docker Registry Token:拉取私有Docker镜像时的认证。
云服务密钥(如AWS Access Key、阿里云RAM密钥)。
Secret: glpat-xxxxxxxxxx # GitLab个人访问令牌
Secret file
(加密文件)
作用:上传一个加密的敏感文件(如证书、密钥文件)。
应用场景:
Kubernetes kubeconfig文件:连接K8s集群时使用。
SSL/TLS证书(如
.pem
、.crt
文件):用于HTTPS服务双向认证。SSH私钥文件(如
id_rsa
):替代明文密码,用于密钥对认证。
文件: /path/to/id_rsa # 上传SSH私钥文件
Certificate
(证书)
作用:上传PKCS#12格式的证书(包含公钥、私钥和CA链),用于双向SSL/TLS认证。
应用场景:
HTTPS双向认证:访问需要客户端证书的服务端(如内部API网关)。
代码签名:在构建过程中对发布包进行数字签名。
PKCS#12证书文件: client.p12
证书密码: cert-password
选择凭据类型的决策逻辑
场景 | 推荐类型 | 原因 |
---|---|---|
需要账号+密码登录服务 | Username with password |
直接匹配账号密码认证需求 |
需调用API或短文本密钥 | Secret text |
适合单行文本,如API Key、Token |
需上传密钥文件或证书 | Secret file |
文件整体加密,避免拆分存储 |
需双向SSL认证 | Certificate |
PKCS#12格式支持完整证书链和私钥 |
通过以上分类,您可以根据实际需求选择对应的凭据类型,确保认证信息的安全性和易用性。