我创建了这个秘密的后端:
$ vault secrets enable -path=openshift kv
$ vault write openshift/postgresql username=tdevhub
$ vault write openshift/postgresql password=password
我不太清楚如何读取username
和password
值。
我尝试过:
$ vault read openshift/postgresql/password
或
$ vault kv get openshift/post...
另一方面,当我执行此命令行时:
$ vault kv get openshift/postgresql
====== Data ======
Key Value
--- -----
username tdevhub
我想将username
和password
存储到一个秘密的后端中。我已经意识到,一个kv
秘密后端只能存储一个密钥...对吗?
我如何实现目标?
答案 0 :(得分:2)
您可以使用vault write openshift/postgresql username=tdevhub password=password
这样的命令存储多个数据。当您在该位置阅读时,将同时返回username
和password
的值。
不幸的是,您不能将数据追加到同一位置,因此,当您在该路径上再次执行写入操作时,先前的值将被覆盖。如果要稍后添加数据,则有两种选择:
答案 1 :(得分:2)
您可以使用
阅读机密vault kv get -field=password openshift/postgresql
或
vault kv get -field=username openshift/postgresql
答案 2 :(得分:0)
您可以使用标志 -format json
和 -field=data
来获取给定键下的所有数据,这些数据以 JSON 格式正确格式化。这也会过滤掉额外的细节。
vault kv get -format json -field=data openshift/postgresql
你会得到的输出是 -
{
"username": "tdevhub",
"password": "password"
}