関連
準備
aws-sdk-ssm
をインストールする。
下記コマンドを実行するか、Gemfile
に追記する。
aws-sdk
をインストールしてもいいが、結構サイズが大きいので基本的には必要なものだけインストールするようにした方がいいと思う。
gem install aws-sdk-ssm
or
gem 'aws-sdk-ssm'
サンプルコード
今回はAWS SSM パラメータストアに以下のようなパラメータが作成してある。
パラメータ名 | 値 |
---|---|
sample-parameter | HOGEHOGE!! |
require 'aws-sdk-ssm'
# 認証情報
# `~/.aws/credentials`に認証情報が設定されている場合、
# または環境変数`AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`に認証情報が設定されている場合は
# `access_key_id`と`secret_access_key`は不要
credentials = {
access_key_id: 'xxxxxxxxxxxxxxxxxxxx',
secret_access_key: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
region: 'ap-northeast-1'
}
# SSMクライアントを生成
ssm_client = Aws::SSM::Client.new(credentials)
# リクエスト
request = {
name: 'sample-parameter', # パラメータ名
with_decryption: true # 暗号化されている場合は復号し、暗号化されていない場合は何もしない
}
response = ssm_client.get_parameter(request)
pp response
# => #<struct Aws::SSM::Types::GetParameterResult
# parameter=
# #<struct Aws::SSM::Types::Parameter
# name="sample-parameter",
# type="SecureString",
# value="HOGEHOGE!!",
# version=1,
# selector=nil,
# source_result=nil,
# last_modified_date=2019-09-13 00:28:02 +0900,
# arn="arn:aws:ssm:ap-northeast-1:xxxxxxxxxxxx:parameter/sample-parameter">>
puts response.parameter.value
# => HOGEHOGE!!