ラピッドスタディAWS 〜 5.AWS SDK for Ruby でアクセスキーとリージョンを環境変数に設定する

ラピッドスタディAWSの5稿目の記事です。
前回は、ラピッドスタディAWS 〜 4.AWS SDK for Ruby で EC2を作成してSSHでログインでした。
今回から、CDP(クラウドデザインパターン)の実践をしていくと予告していたのですが、その前にちょっと落ち穂拾いをしておきたいと思います。

アクセスキーとリージョンを環境変数に設定する

AWS SDK for Rubyを使ってAWSを操作するには、まずアクセスキーとリージョンを設定します。
スクリプトに直に書くと

require 'aws-sdk'

AWS.config(
	:access_key_id => 'YOUR_ACCESS_KEY',
	:secret_access_key => 'SECRET_ACCESS_KEY',
        :region => 'YOUR_REGION'
)

s3 = AWS::S3.new

s3.buckets.collect(&:name).each do |bucket|
	p bucket
end

みたいな感じでS3に登録しているbucketの一覧が表示できるのですが、このスクリプトをうっかりgithubのパブリックリポジトリに上げてしまったら最後、誰でも私のアカウントでAWSを操作出来てしまいます((((;゚Д゚))))ガクガクブルブル


これは不便すぎるので、アクセスキーとリージョンを環境変数に設定します。

export AWS_ACCESS_KEY_ID='YOUR_ACCESS_KEY'
export AWS_SECRET_ACCESS_KEY='SECRET_ACCESS_KEY'
export AWS_REGION='YOUR_REGION'

これで先ほどのスクリプトの冒頭部分 AWS.config~ を消しても動きます。

require 'aws-sdk'

s3 = AWS::S3.new

s3.buckets.collect(&:name).each do |bucket|
	p bucket
end

素晴らしい!

次回からは本当にCDPやっていきます。