この記事について
AWS Systems Manager パラメータストア(以下SSM)はCloudFormation等には記載したくないパスワードやsshの鍵などを暗号化して保存することができる便利な機能です。深く使っていくにつれて改行を含むような秘匿データを保存したい用途が出てくるのですが、改行を含むデータを保存したいときのやり方が以前と変わっているようなので、記録を残す目的で作成しました。
昔はできてたやり方
旧来は、SSM に対してput-parameterする際のValueに \n を入れることでget-parameterする際に改行として認識されましたが、現在は使用できなくなっています
現在(2018/6)時点でのやり方
Valueに直接改行を入れることでput-parameterすることができます。
方法1:ファイルに入力データを入れて読み込む
入力したいデータをテキストファイルで用意します(以下の例だとhoge.txt)。それを--valueに指定することでputできます。
aws ssm put-parameter --name "/key/name" --value fileb://C:\hoge.txt --type "SecureString" --key-id "key_id" --overwrite
#方法2:直接改行する
短い文章の場合は直接改行を入れても改行できます。Linuxでコマンド途中に改行を入れるにはCtrl+V → Ctrl+J
とすると改行できます。(Windowsは知りません)
aws ssm put-parameter --name "/key/name" --value "text1
text2
text3
" --type "SecureString" --key-id "key_id" --overwrite