![見出し画像](https://assets.st-note.com/production/uploads/images/16131499/rectangle_large_type_2_a64b32ff94c05d06cd62f64ef19d2634.jpeg?width=1200)
hashicorp vaultを動かしてみた
こんにちは。でじぴざです。hashicorpから出ているvaultを動かしてみました。簡単にまとめましたので、日記にします。
1. vaultとは
秘密データや、センシティブなデータを管理するソフトウェアです。vaultプログラム1つで、サーバーにもなり、クライアントにもなります。
2. vaultの構成
3. vaultのDL
vault 1.3.0を使った場合の操作方法です。
下記のURLにアクセスします。
3.1. URL
3.2. 解凍
DLしたファイルを解凍しましょう。vault.exeが1つありますね。これがvaultサーバーにもなるし、vaultクライアント(コマンド)にもなります。
C:\vault などに展開しましょう。
4. 実行
Windows 10で、Powershellから実行します。
C:\vault> .\vault.exe server -dev
起動しましたかー?powershellの画面はそのままにして下さい。powershell->vault.exeという親子関係でプログラムが動作しています。
5. 検証
vaultサーバーにアクセスしてみましょう。vault WebUIを見てみます。ブラウザから、powershellに表記のあった http://127.0.0.1:8200 をURL欄に貼り付けます。ログイン画面が出ましたか?ログインする場合、トークン方式でログインします。また、powershellのRoot Token: s.RkghHiPIJtNmZwhR2o0DMeg8を使ってログインしてみましょう。
s.RkghHiPIJtNmZwhR2o0DMeg8をToken欄に貼り付けます。
これでWebUIについては、動作していることが分かりました。
6. 利用
利用してみましょう。先ほどのpowershellとは別に、vaultクライアントとして、もう1つpowershellを実行します。環境変数VAULT_ADDRにhttp://127.0.0.1:8200を設定します。
$env:VAULT_ADDR="http://127.0.0.1:8200"
vaultクライアントからvaultサーバーに指示が出せました。環境変数を設定しない場合は、エラーになります。
KV(Key-Value)で値を書いてみましょう。
.\vault.exe kv put secret/hello foo=world
2回実行しちゃった・・・(;^ω^)
.\vault.exe kv put secret/hello boo=world
本当に書き込めたか確認してみましょう。
.\vault.exe kv get secret/hello
Key=boo , Value=worldが確認できました。あれ?fooは?3番目の情報が表示されてるのかな?そーゆー時は、docsを確認します。つまり、マニュアルを見るってことです。
-version付ければ良いみたいですね。
.\vault.exe kv get -version 2 secret/hello
さっき書き込んだfoo=worldが取得できましたね。
こんな感じでvaultを使います。
以上です。