概要
コマンドラインでAWSを操作する場合、アクセスキーの設定は「環境変数」と「aws configureコマンドによるセット(~/.aws/credentialsに保存される)」ではどちらが優先されるか試してみた。
結果
環境変数 AWS_ACCESS_KEY_ID と AWS_SECRET_ACCESS_KEY が設定されている場合、環境変数が使用される。
どちらか片方でも環境変数が存在しない場合、aws configureコマンドでセットした値が使用される。
例
以下の~/.aws/credentialsが存在し、環境変数AWS_ACCESS_KEY_IDとAWS_SECRET_ACCESS_KEYが設定されていない場合
[default]
aws_access_key_id=AAAAAAAAAAAAAAAA
aws_secret_access_key=BBBBBBBBBBBBBBBBaws s3 lsはAAAAAAAAAAAAAAAAのアクセスキーが使用される。
- export
AWS_ACCESS_KEY_ID=YYYYYYYYYYYYYYYYYYY - export
aws_secret_access_key=ZZZZZZZZZZZZZZZZZZZZZZ
の後にaws s3 lsを実行すると、YYYYYYYYYYYYYYYYYYYのアクセスキーが使用される。
参考サイト
【AWS】AWS認証情報の設定方法/保管場所/優先順位を理解する。 - Qiita
まえがき なんとなくで使ってきたAWS認証情報設定周りについてちゃんと理解する。 AWS CLIインストール ここからインストールする。 % aws --version aws-cli/2.0.50 Python/3.7.4 Darwin/20.6.0 exe/x86_...
