AWS CLIの設定-二つのawsアカウントがある時
概要
AWS CLIの設定について、多くの記事がすでに存在していると思います。しかし下記の場面を遭遇したことがないでしょうか?
- プロジェクトからAWSアカウントをもらいました(Aアカウント)
- 検証用/個人用のアカウントを持っています(Bアカウント)
- Aアカウント、Bアカウントの切り替えができておらず、エラーが発生
これは、実際に遭遇したことであり、その切り替えの仕組みが分からず、躓いていました。
この編で、解消法を共有できればと思います。
アカウント切り替えの仕組み
前提条件
- AWSアカウント
- AWS CLIインストール済み
手順
注意事項
CLIのprofileの設定方法には、アクセスキー使用や、SSOログインなどの方法があります。
本編ではアクセスキー使用します。
profile a-accountを設定
- アクセスキーを取得(AWSコンソール画面で操作)
- profileの設定(CLIで操作 ※ここはWSL linuxで操作)
下記profile設定コマンドを実行(アカウントを区別するために、porfile名を入力してください。)
aws configure --profile your_profile_name
-
profileのアクセスキー等を入力
- AWS Access Key ID [None]: と表示されるので、メモしたAccesskey IDを入力してEnterを押す
- AWS Secret Access Key [None]:と表示されるので、メモしたSecret accesskeyを入力してEnterを押す
- Default region name [None]:と表示されるので、ap-northeast-1と入力してEnterを押す
- Default output format [None]: と表示されるので、jsonと入力してEnterを押す
- ※もし間違って設定してしまった場合は、もう一度「aws configure --profile your_profile_name」を実行して記入すれば、情報が上書きされます
-
これで、profile a-accountの設定が完了です
profile b-accountを設定
- profile a-accountと同じ手順で実施してください
- ※profile設定時、a-accountと異なるprofile名を入力してください
切り替えしてみよう
awsコマンドを実行時、--profile your_profile_nameオプションを追加してから実行する
具体的には下記の例をご参照ください。
$ aws s3 ls --profile b-account
2024-12-12 18:14:13 <略>lambda-stack
2024-11-21 04:40:44 <略>samclisourcebucket
2025-01-16 09:18:24 <略>bucket-1211
$
$ aws s3 ls --profile a-account
2024-11-21 10:46:21 <略>network
2024-12-09 16:11:36 <略>s3-lambda
$
このように、複数AWSアカウントを持つ時、切り替えることを実現します。








