概要
コマンドラインで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=BBBBBBBBBBBBBBBB
aws 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 --versionaws-cli/2.0.50…