credentialsファイル
Linux/Macでは~/.aws/credentials
に置く。
プロファイルごとにアクセスキーID/シークレットアクセスキーを設定できる。
デフォルトのプロファイルはdefault
になる。
~/.aws/credentials
[default]
aws_access_key_id = DEFAULT_ACCESS_KEY_ID
aws_secret_access_key = DEFAULT_SECRET_ACCESS_KEY
aws_session_token = DEFAULT_SESSION_TOKEN
[dev]
aws_access_key_id = DEV_ACCESS_KEY_ID
aws_secret_access_key = DEV_SECRET_ACCESS_KEY
オブジェクトごとに切り替える
~/.aws/credentials
に設定ファイルがあるなら:profile
にプロファイル名を指定するだけ。
require 'aws-sdk-core'
ec2 = Aws::EC2::Client.new region: 'ap-northeast-1', profile: 'dev'
別のパスを指定するならAws::SharedCredentials
を作成して渡す。
require 'aws-sdk-core'
creds = Aws::SharedCredentials.new path: '/path/to/creds', profile_name: 'dev'
ec2 = Aws::EC2::Client.new region: 'ap-northeast-1', credentials: creds
まとめて切り替える
~/.aws/credentials
にファイルがある場合。
require 'aws-sdk-core'
Aws.config[:profile] = 'dev'
Aws.config[:region] = 'ap-northeast-1'
ec2 = Aws::EC2::Client.new
別のパスを指定する場合。
require 'aws-sdk-core'
creds = Aws::SharedCredentials.new path: '/path/to/creds', profile_name: 'dev'
Aws.config[:credentials] = creds
Aws.config[:region] = 'ap-northeast-1'
ec2 = Aws::EC2::Client.new