コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

AWSコマンドにおいてAWSのアカウント設定情報を複数持ち、切り替える方法

やり方を忘れるのでメモがてら

環境

$ aws --version
aws-cli/1.11.129 Python/2.7.10 Darwin/17.7.0 botocore/1.5.92

設定情報を複数用意する

作り方

$ aws configure --profile {{作りたいプロファイル名}}

sandbox という profile を作りたい場合

$ aws configure --profile sandbox

上記のコマンドを打つと以下のように作成される

$ cat ~/.aws/credentials
[default]
aws_access_key_id = ABCDEFGHIJKLMNOPQRSTUVWXYZ
aws_secret_access_key = ABCDEFGHIJKLMNOPQRSTUVWXYZ
[sandbox]
aws_access_key_id = ABCDEFGHIJKLMNOPQRSTUVWXYZ
aws_secret_access_key = ABCDEFGHIJKLMNOPQRSTUVWXYZ

設定情報を切り替える

やり方

AWS_DEFAULT_PROFILE環境変数に使いたい profile を設定する

$ export AWS_DEFAULT_PROFILE=sandbox

現在のものを調べる

やり方

$ aws configure list

$ aws configure list
      Name                    Value             Type    Location
      ----                    -----             ----    --------
   profile                <not set>             None    None
access_key     ****************AAAA shared-credentials-file
secret_key     ****************AAAA shared-credentials-file
    region           ap-northeast-1      config-file    ~/.aws/config

何かprofileが設定されていれば profile の value に 対象の物が出る

参考リンク