不会吧不会吧!听说还有人在手动迁移Vault密钥?
2022-05-16 早春的树
不会吧不会吧!听说还有人在手动迁移Vault密钥?
作者:早春的树 发布时间:2022-05-16 10:00:00

坏了坏了,自从使用Vault管理建木CI密钥 以后,又有小伙伴提出新的问题了

Vault密钥怎么迁移啊?

啊这,不会要我一个一个复制过去吧😭

对于建木CI来说,所需皆节点,有啥想要的功能,加个节点就完事了😃

正准备去建木节点库提个issue,才发现已经有这个issue了,看来大家都遇到了同样的问题呀

建木官方节点仓库:https://gitee.com/jianmu-runners/jianmu-runner-list

最近发现节点终于发布了,这不得赶紧去试一下吗!

Vault密钥管理节点

https://jianmuhub.com/_/vault

该节点提供了导入、导出key/value密钥引擎数据的版本

Vault数据导出

在Vault密钥管理节点中,使用1.0.0-kv_export版本导出key/value密钥引擎数据

  • 查看节点文档

注意:认证方式有两种,第一种通过参数token认证;第二种通过证书认证,输入参数crtcrt_key

  • 定义管道DSL

定义DSL时,将管道示例复制过来,修改一下参数值就可以了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
name: vault数据导出
pipeline:
vault_export:
alias: vault数据导出
type: vault:1.0.0-kv_export
param:
# Vault连接地址
url: https://127.20.150.148:444
# 密钥引擎名称,该版本只支持key/value密钥引擎
engine_name: jianmu
# 密钥引擎版本,默认为1,可选值为1、2
engine_version: 1
# 认证方式采用token认证
token: ((vault.token))

项目创建成功后,点击触发就可以导出Vault数据了,输出参数vault_path为导出的Vault数据文件路径

Vault数据导入

在Vault密钥管理节点中,使用1.0.0-kv_import版本导入key/value密钥引擎数据

  • 查看节点文档

一般情况下,导出、导入节点是一起使用的,参数vault_path是Vault数据导出节点的输出参数

  • 定义管道DSL

和导出节点一样,复制DSL示例修改一下参数值就可以了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
name: vault数据迁移
pipeline:
vault_export:
alias: vault数据导出
type: vault:1.0.0-kv_export
param:
# Vault连接地址
url: https://127.20.150.148:444
# 密钥引擎名称,该版本只支持key/value密钥引擎
engine_name: jianmu
# 密钥引擎版本,默认为1,可选值为1、2
engine_version: 1
# 认证方式采用token认证
token: ((vault.token))
vault_import:
alias: vault数据导入
type: vault:1.0.0-kv_import
param:
url: https://127.20.148.22:444
vault_path: ${vault_export.vault_path}
engine_name: jianmu
engine_version: 1
# 使用证书认证
crt: ((vault.crt))
crt_key: ((vault.key))

保存项目DSL,点击触发,流程执行完毕就成功同步Vault数据了!

每次需要同步的时候,只需再点击触发就行了,简直不要太方便!