无法使用Vault kv put将文件内容存入HashiCorp Vault求助
解决HashiCorp Vault kv put导入JSON文件失败的问题
正确命令格式
要将整个JSON文件的内容存入Vault KV引擎,需指定存储路径,再在路径后用@<文件名>导入文件。示例命令:
vault kv put -format=json -address ${VAULT_ADDR} secret/test @abc.json
secret/test是数据存储的KV路径(可按需修改,比如secret/app/config)@abc.json表示将该文件的JSON键值对导入到指定路径的KV条目中
之前命令的错误原因
vault kv put ... key=@abc.json:错误将key作为字段名,试图给它赋值为文件内容,但这种写法不适用于导入整个JSON。Vault会把key识别为字段而非存储路径,导致无法正确解析数据。vault kv put ... key @abc.json:key被当成了存储路径,但@abc.json不符合命令格式,Vault无法识别这是待导入的文件,因此无法读取数据。vault kv put ... @abc.json:缺少必要的存储路径参数,Vault不知道数据要存入哪个位置,因此报错“必须提供数据”。
验证数据是否存入成功
执行以下命令查看存储内容:
vault kv get -format=json -address ${VAULT_ADDR} secret/test
内容的提问来源于stack exchange,提问作者tiktok
相关产品推荐
相关产品推荐

