複数のAWSアカウントでAWS CLIを利用する

まとめ

aws configure で設定する。複数設定するときは、–profile でプロファイル名を指定する。

1つのAWSアカウントの場合

AWSアカウントが1つの場合は、aws configure で設定するだけでOKです。
Access Key の作り方はこちら => AWS IAMユーザのアクセスキーを作成する

$ aws configure
AWS Access Key ID [None]: AKI**************O5S
AWS Secret Access Key [None]: AJ/y******************************D4Qjna
Default region name [None]: ap-northeast-1
Default output format [None]: json
$ aws configure list
      Name                    Value             Type    Location
      ----                    -----             ----    --------
   profile                <not set>             None    None
access_key     ****************YO5S shared-credentials-file
secret_key     ****************Qjna shared-credentials-file
    region           ap-northeast-1      config-file    ~/.aws/config

2つ以上のAWSアカウントの場合

2つ目以降は profile名を付けると追加することができます。1つめはdefaultとなっています。

$ aws configure --profile account2
AWS Access Key ID [None]: AKI**************ABC
AWS Secret Access Key [None]: AJ/y******************************D4QXYZ
Default region name [None]: ap-northeast-1
Default output format [None]: json

~/.aws/ に config、credentials の2ファイルが作成されています

$ ls ~/.aws/
config  credentials

$ cat ~/.aws/config 
[default]
output = json
region = ap-northeast-1
[profile account2]
output = json
region = ap-northeast-1

$ cat ~/.aws/credentials 
[default]
aws_access_key_id = AKI**************O5S
aws_secret_access_key = AJ/y******************************D4Qjna
[account2]
aws_access_key_id = AKI**************ABC
aws_secret_access_key = AJ/y******************************D4QXYZ

ファイルは直接編集して追加することもできます。

profile を指定した使い方

–profile のパラメータで指定することができます。何も指定しないと default になります。

aws s3 ls
aws s3 ls --profile account2

AWSAWS CLI

Posted by kidatti