vault read aws/creds/deploy
で作成した時は標準では lease_duration が 3600秒(1時間)
で、待ってみたところ、下記のようなログを吐いて、1時間でアカウントは削除されました。
2015/05/01 06:44:24 [INFO] expire: revoked 'aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
AWSのダッシュボードで確認しても、きちんと消されています。
この時間、renew コマンドで、lease_duration の時間を変更できるのかな?と、今度は複数のアカウントを作成後に、下記を実行
$ vault renew aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 60
Key Value
lease_id sys/renew/aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e4fb0482-13c9-246e-9999-xxxxxxxxxxxx
lease_duration 1485
$ vault renew aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 60
Key Value
lease_id sys/renew/aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/38e283e3-7a35-ecc8-609f-xxxxxxxxxxxx
lease_duration 1313
なんか、期待した挙動じゃないなぁ……仕様をきちんと理解してないので、バグなのかそうでないのかの判断すらつかない
$ vault renew aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy 60
Key Value
lease_id sys/renew/aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/82aeebd7-5a15-86fe-5a06-a95e18025b88
lease_duration 3584
$ vault renew aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy 3600
Key Value
lease_id sys/renew/aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/80697f7f-2d4e-3f39-e16f-b2a830b37241
lease_duration 115
$ vault renew aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy 3600
Key Value
lease_id sys/renew/aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/2ec09511-bcb7-7aab-813f-ba2f29473e6b
lease_duration 3589
$ vault renew aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy 3600
Key Value
lease_id sys/renew/aws/creds/deploy/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy/5eb02b99-a477-d0bd-c7ca-ae8f69b0bf61
lease_duration 117
3600秒が max で、カウンタが1周してる?だとしても、ちょっとおかしい。
https://github.com/hashicorp/vault/blob/master/api/SPEC.md
を見ると lease_duration_max が max値として使われるっぽいけど、どうやって確認すればいいか、よくわからないなぁ……
で、renew したアカウントは
2015/05/01 07:31:20 [ERR] expire: failed to revoke 'sys/renew/aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e4fb0482-13c9-246e-9999-xxxxxxxxxxxx': failed to revoke entry: secret is unsupported by this backend
といったログが出て、正常に revoke されないっぽい。もしかして、revoke 前に renew で延長がダメなのかと思ったけど、revoke されたあとは、延長不可。
$ vault renew aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 3600
Renew error: Error making API request.
URL: PUT http://127.0.0.1:8200/v1/sys/renew/aws/creds/deploy/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Code: 400. Errors:
* lease not found
モヤモヤ……
$ vault version
Vault v0.1.1-dev (1dffd7899c1e6521a2352bf84317c1d5d9e6fbef)
IPv4/IPv6 meter |
思ったより安い……時もある、Amazon |