以前作成した以下のエントリ、「作成済みのKVシークレットエンジンへのキーの読み書き」はCLIとRESTの操作をメモしていたのに、その前段の「KVシークレットエンジンの有効化・無効化」が抜けてたのでメモ。というかやろうとしたらドキュメント(エンドポイント)がどこかわからずだいぶ時間を溶かしてしまったので備忘録。
まぁ、わかってしまえば何てことないんだけどね。。
エンドポイント
/sys/mount/:path
を使う。
KVシークレットエンジンの有効化(作成)
before
/ $ vault secrets list Path Type Accessor Description ---- ---- -------- ----------- cubbyhole/ cubbyhole cubbyhole_b5a7105b per-token private secret storage foo/ kv kv_3fe575f1 n/a hvac_sample/ kv kv_5bfa470a n/a identity/ identity identity_79aa0f1c identity store secret/ kv kv_ed2bec7b n/a sys/ system system_82fb3e3b system endpoints used for control, policy and debugging
rest-sample
というパスのKVシークレットエンジンをRESTで有効化する。
シークレットエンジンの種別やバージョン(今回はkv
のバージョン2)はパラメタに指定する。
curl -s -H "X-Vault-Token: $VAULT_TOKEN" \ -X POST \ -d '{ "type": "kv", "options": { "version": "2" } }' \ http://192.168.0.75:8200/v1/sys/mounts/rest-sample
after
/ $ vault secrets list Path Type Accessor Description ---- ---- -------- ----------- cubbyhole/ cubbyhole cubbyhole_b5a7105b per-token private secret storage foo/ kv kv_3fe575f1 n/a hvac_sample/ kv kv_5bfa470a n/a identity/ identity identity_79aa0f1c identity store rest-sample/ kv kv_32088881 n/a secret/ kv kv_ed2bec7b n/a sys/ system system_82fb3e3b system endpoints used for control, policy and debugging
KVシークレットエンジンrest-sample
が作成された。
その他のパラメタはAPIリファレンスを参照。
KVシークレットエンジンの無効化(削除)
有効化で作成したrest-sample
を無効化する。
curl -s -H "X-Vault-Token: $VAULT_TOKEN" \ -X DELETE \ http://192.168.0.75:8200/v1/sys/mounts/rest-sample
実行後は以下の通り削除された。
/ $ vault secrets list Path Type Accessor Description ---- ---- -------- ----------- cubbyhole/ cubbyhole cubbyhole_b5a7105b per-token private secret storage foo/ kv kv_3fe575f1 n/a hvac_sample/ kv kv_5bfa470a n/a identity/ identity identity_79aa0f1c identity store secret/ kv kv_ed2bec7b n/a sys/ system system_82fb3e3b system endpoints used for control, policy and debugging / $
まとめ
確認した環境はVault 1.18.1
シークレットエンジン自体の有効/無効化や、設定については/sys/mounts
のリファレンスを見ればOK