[AWS] CLIで複数のIAMを使い分ける

  • このエントリーをはてなブックマークに追加
  • LINEで送る

小ネタです。
複数のAWSアカウントを利用していると、1台のPCで複数のIAMをCLIから利用したくなるわけですが、複数のプロファイルを簡単に切り替える方法が用意されているのでメモしておきます。

- Sponsored Link -

設定

ここでは foo という名前のプロファイルを作成してみます。AWS CLIをすでに利用している前提です。

A. aws configureで設定するパターン

--profileオプションに追加したいプロファイル名を指定します。あとはいつものように必要な情報を入力するだけです。

$ aws configure --profile foo
AWS Access Key ID [None]: xxxxxxxxxxxxxxxxxxxx
AWS Secret Access Key [None]: nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Default region name [None]: ap-northeast-1
Default output format [None]: json

B. ファイルを直接編集するパターン

もしくはホームディレクトリ直下にある「.aws」の下にあるファイルを直接編集してもOKです。

~/.aws/credentials

新しく追加するプロファイルを以下のように追加します。現在利用しているdefaultはそのまま残しておきます。

[default]
aws_access_key_id = xxxxxxxxxxxxxxxxxxxx
aws_secret_access_key = nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

[foo]
aws_access_key_id = yyyyyyyyyyyyyyyyyyyy
aws_secret_access_key = nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

~/.aws/config

こちらも同様です。「profile (プロファイル名)」と言った感じでプロファイル名の前に profile は付ける必要があります。

[default]
region = ap-northeast-1
output = json

[profile foo]
region = ap-northeast-1
output = json

利用方法

単純に--profileオプションで利用したいプロファイル名を指定するだけです。未指定の場合はdefaultのプロファイルが利用されます。

$ aws s3 ls s3://example.com/ --profile foo

その他

デフォルトのプロファイルを指定する

そもそもデフォルトで利用するプロファイルをfooにしてしまいたい場合、環境変数で指定することができます。

$ export AWS_PROFILE=foo

.bashrc.zshrc などに書いておくと便利ですね。

参考ページ

コメント

感想やご質問などお気軽にどうぞ。広告が表示されている場合は下にスクロールしてください。投稿にはSNSへのログインが必要です。

このブログを応援する

お寄せいただいたお気持ちは全額サーバ代や次の記事を執筆するための原資として活用させていただいております。この記事が参考になった場合などぜひご検討ください。

PayPal(ペイパル)
PayPalで300円支払う
※金額は任意で変更できます。
※100円でも泣いて喜びますw
※住所の入力欄が現れた場合は「no needed」を選択ください
これまでのご協力者さま
- Sponsored Link -