pgp - 使用 PGP 密钥通过 curl api 进行 Vault 初始化失败
问题描述
我正在尝试使用 api 初始化 hashcorp vault。
有效载荷.json:
{
"secret_shares": 2,
"secret_threshold": 2,
"pgp_keys": [
"sample_pub_1.asc",
"sample_pub_2.asc"
]
}
当我执行以下命令时:
curl --request PUT --data @payload.json http://localhost:8200/v1/sys/init
出现以下错误:
{“错误”:[“无效的密封配置:错误解码给定 PGP 密钥:> 输入字节 6 处的非法 base64 数据”]}
但如果我用命令行初始化 Vault 一切正常:
vault operator init -key-shares=2 -key-threshold=2 -pgp-keys="sample_pub_1.asc, sample_pub_2.asc"
下面是输出:
Unseal Key 1: wcBMA3EOVuvAOcf6AQgAhm4FpWmwhU9BV8jaYLuL8gyzhpQgPs76ByF/v5XFYj3PKaVcm2U3nzn7dablYMheGkFbOytCQ8G1guJrQ756+9t0dotAzghEeCUDwwIEU5lqENR/nAJXT4NvgrycASfS5OKv7vT6L/L8GokiHPSdBdouI3/4GyHKygrqaAUjbmNDUrgXDEfaWMkNv58yJE1tVpjYuKh8pWqNqJgSyDdkrXUt4AEY6yLTsLaCkOuu0j1sVE5D3huE0UV8u59qDwf9FusACgoyhyqyNwXqMn0pGet0hebk9pY/F293LWUr2zp7otbo5sX7H+086pl4plxUHo3GN/vhYnfwIVvJbCz68tLgAeShAyKfKCX6kFz+QX3LCkLW4UOS4Dngt+EvS+B24sFDtIvgPOZPueiPgmxwj5Evv0GzPm8iDvnrxvaWU1vxl+YlP1f3PI+rs+oBCndlBL0lVpFTDbtVLrFb/szxj+rRwKnz0oOZ4Djh2ufgDeQIlx/Zw6T1y+41jj8ITwn24uo5ChnhmeIA
Unseal Key 2: wcBMA0Eqk591x+XTAQgAQDi/V1yGqHlrSDWJ2SLeiqaLzpNrcbC5cB4+CxzkZsiVgjrd5YitULL7TmWkYl43VSPxs0hnk3O+uRUp+D4gVjUWykpGmdhwB5CiWHwNMzuIUE1E/UQVMQ39OLnG+C3VgzRe8HNhEr6pkbLFgSQLlr/459bgEyAPrW/U1PrHrH+hf+eE0me5/hUQWBfqcZHeY1Zp3A97UUBV54yarSgfRyqluiXe5j6L2X0qw5Ge/luRR8xPygyx3JqlIlPCj6liMS/to/yRGOKvYAXjXdflpBeodx3cSUOMmBTrzk1h6otM8LR28dp7qS+0qX0mWHFAfElMrJh9tz5PpWY5WIdyJNLgAeQO/Bvz4UMJLBAzEcCy2G7L4fDf4I/gSuHJROC+4lgAeaTgv+bRQCmvD4SEQYUJX3IP0cwMgskkys/vwUMqnZSNMS0gXayRvVSJ5YAHsynuixp+aE1x6UBiEw6cjVX7wwfupvdg4PTh4GPgG+ TjTQDF06tQigWmpxio1JAa4jdU9uzhWbMA
初始根令牌:aa3cccce-5ac8-4aef-7d50-6fab16e89ee4
解决方案
你可能没有对你的 pgp_keys 进行 base64 编码;根据使用 curl init 时的官方 Vault 文档:
密钥必须从其原始二进制表示进行 base64 编码
推荐阅读
- php - 管理 PHP 数组中字符串使用的内存的最佳方法是什么?
- excel - 注销时Powershell脚本不会作为系统运行,但在用户登录时工作正常
- jquery - 是否可以通过 Promise 防止过多的异步调用?
- sql - 使用带有日期和时间的新创建列在 SQL 中提取数据
- puppeteer - 如何修复网络抓取工具中的“page.goto 不是函数”错误
- git - 如何再次在 Github 中 fork 一个项目?
- javascript - 为什么插入后没有显示文本?
- c# - 如何将此字符串转换为标签?
- pycharm - PyCharm 中再次出现未解决的参考问题
- dynamics-crm - FetchXML 查询返回当前用户下属拥有的所有记录