AWS
aws cli(v1) secretsmanager コマンドで取得、更新したい
https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/index.html
必要権限
- GetSecretValue
- PutSecretValue
コマンド
取得
Secretだけを取得したい
更新
キーを追加したり、あるキーの値を更新したい場合も、JSONで全体を指定しなくてはいけないのが面倒だがjqでなんとかする。
jq Manual (development version)
Add a field to an object with JQ · GitHub
- jq の
--arg
を使って変数をセットする
- フィールドを追加(同名のキーがあれば上書き)のコマンドでJSONを更新する
/tmp/new_secrets.json
に変更後のJSONを書き出す
put-secret-value
の --secret-string
にはファイルを指定できるので、 /tmp/new_secrets.json
を指定する
おまけ
secretsmanagerのvalueにJSONをいれたい場合