2017-03-22 45 views
1

當我把第一個鍵/值對庫:HashiCorp跳馬項目 - 編寫額外的鍵/值對不overwritting現有

vault write secret/item/33 item_name='item_name' 

它工作得很好,我得到:

vault read secret/item/33 

Key      Value 
---      ----- 
refresh_interval  768h0m0s 
item_name    item_name 

但是,如果我想要把更多的領域item_type

vault write secret/item/33 item_type='item_type' 

覆蓋存在的一個:

vault read secret/item/33 

Key      Value 
---      ----- 
refresh_interval  768h0m0s 
item_type    item_type 

如何將其他字段 - 鍵/值對寫入保險庫而不替換現有的字段?

回答

1

每個鍵只能存儲一個值。 (Confirmed by Vault developer) 要麼你想上的數據結構是合適的,寫一個很長的字符串這個關鍵,或者你使用的每個值可以看成一個鍵如下:

vault write secret/item/33/name item_name='item_name' 
vault write secret/item/33/type item_type='item_type' 
1

庫不允許你追加到現有的祕密。這實際上很煩人。您首先必須讀取以前的鍵/值,然後在寫入新鍵/值的同時將它們寫回。

這裏是一個博客帖子,我發現如果有人談論這個過程:從本質上講https://www.fritz.ninja/extending-vault-cli-with-some-ruby-love/

,他寫了他自己的命令行工具,自動進行追加爲您服務。他說他爲自己的工作創建了工具,所以他不能共享代碼,但他在Github上啓動了一個開源版本,名爲Vaultyhttps://github.com/playpasshq/vaulty