首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Vault CLI路径映射到Packer Vault路径

将Vault CLI路径映射到Packer Vault路径
EN

Stack Overflow用户
提问于 2020-12-02 22:50:42
回答 2查看 265关注 0票数 0

使用Vault CLI,我可以获取以下路径的数据:

代码语言:javascript
复制
vault kv get -field=databag chef0/databags/wireguard/hedge

然而,在我的打包脚本中,这是:

代码语言:javascript
复制
 "{{ vault `chef0/databags/wireguard/hedge` `databag` }}"

生成无数据错误:

代码语言:javascript
复制
template: root:1:3: executing "root" at <vault `chef0/databags/wireguard/hedge`
`databag`>: error calling vault: Vault data was empty at the given path.
Warnings: Invalid path for a versioned K/V secrets engine. See the API docs for
the appropriate API endpoints to use. If using the Vault CLI, use 'vault kv get'
for this operation.

是否有将其中一个转换/映射到另一个的规则?

注意:为了消除不相关的权限问题,我使用根令牌运行了这两个命令。

EN

回答 2

Stack Overflow用户

发布于 2020-12-03 06:08:38

好吧,不确定这是在哪里记录的,我也不是说它不是,但这是我发现的:

似乎可以通过data子路径下的API访问存储在密钥中的任何数据,比如chef0。它还可以帮助您了解在与data相同的级别上有一个metadata子路径。

因此,Vault CLI似乎不会公开这些子路径,Vault HTTP-API和打包程序Vault-API会公开这些子路径。

正确的包装器咒语(鸡可选)是:

代码语言:javascript
复制
 "{{ vault `chef0/**data**/databags/wireguard/hedge` `databag` }}"
票数 0
EN

Stack Overflow用户

发布于 2020-12-04 12:36:53

您必须使用kv引擎的v2。对于该引擎,您确实需要在路径中包含/data/,如API docs中所示。对此前缀的要求也在the engine docs中进行了描述。我自己也遇到过同样的问题:-)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65110428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档