AWS Command Line Interface
ユーザーガイド

環境変数

環境変数を使用すると、別の方法で設定オプションと認証情報を指定できます。このため、スクリプト処理や、名前付きプロファイルを一時的にデフォルトとして設定する場合に便利です。

オプションの優先順位

  • このトピックで示されている環境変数のいずれかを使用してオプションを指定した場合、設定ファイルのプロファイルからロードされた値は上書きされます。

  • CLI コマンドラインでパラメータを使用してオプションを指定した場合、対応する環境変数か、設定ファイルのプロファイルからロードされた値は上書きされます。

サポートされている環境変数

AWS CLI は次の環境変数をサポートしています。

  • AWS_ACCESS_KEY_ID – IAM ユーザーまたはロールに関連付けられる AWS アクセスキーを指定します。

  • AWS_SECRET_ACCESS_KEY – アクセスキーに関連付けられるシークレットキーを指定します。これは、基本的にアクセスキーの「パスワード」です。

  • AWS_SESSION_TOKEN – 一時的なセキュリティ認証情報を使用している場合にのみ必要となるセッショントークン値を指定します。詳細については、『AWS CLI Command Reference』の「★Output section of the assume-role command」を参照してください。

  • AWS_DEFAULT_REGION – リクエストを送信する AWS リージョンを指定します。

  • AWS_DEFAULT_OUTPUT – 使用する出力形式を指定します。

  • AWS_DEFAULT_PROFILECLI プロファイルの名前と、使用する認証情報およびオプションを指定します。これは、credentials ファイルまたは config ファイルに保存されているプロファイルの名前、または、デフォルトプロファイルを使用する場合は値 default となります。この環境変数を指定した場合、設定ファイルの [default] という名前のプロファイルを使用する動作は上書きされます。

  • AWS_CA_BUNDLE – HTTPS 証明書の検証に使用する、証明書バンドルへのパスを指定します。

  • AWS_SHARED_CREDENTIALS_FILE – AWS CLI で使用してアクセスキーを保存するファイルの場所を変更します (デフォルトは ~/.aws/credentials)。

  • AWS_CONFIG_FILE – AWS CLI で使用して設定プロファイルを保存するファイルの場所を変更します (デフォルトは ~/.aws/config)。

次の例では、デフォルトのユーザーの環境変数を設定する方法を示します。これらの値は、名前付きプロファイルにある値またはインスタンスメタデータより優先されます。設定後にこれらの値を上書きするには、CLI コマンドラインでパラメータを指定するか、環境変数を変更または削除します。

Linux, macOS, or Unix

$ export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE $ export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY $ export AWS_DEFAULT_REGION=us-west-2

環境変数を設定すると、シェルセッションの終了時まで、または変数に別の値を設定するまで、使用する値が変更されます。変数をシェルのスタートアップスクリプトで設定することで、変数をこれからのセッションで永続的にすることができます。

Windows コマンドプロンプト

C:\> setx AWS_ACCESS_KEY_ID AKIAIOSFODNN7EXAMPLE C:\> setx AWS_SECRET_ACCESS_KEY wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY C:\> setx AWS_DEFAULT_REGION us-west-2

set を使用して環境変数を設定すると、現在のコマンドプロンプトセッションの終了時まで、または変数を別の値に設定するまで、使用する値が変更されます。setxを使用して環境変数を設定すると、現在のコマンドプロンプトセッションおよびコマンド実行後に作成するすべてのコマンドプロンプトセッションで使用する値が変更されます。これは、コマンド実行時にすでに実行されている他のコマンドシェルには影響を及ぼしません

PowerShell

PS C:\> $Env:AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" PS C:\> $Env:AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" PS C:\> $Env:AWS_DEFAULT_REGION="us-west-2"

前の例に示すように PowerShell プロンプトで環境変数を設定した場合は、現在のセッションの期間だけ値が保存されます。PowerShell およびコマンドプロンプトセッション間で環境変数を永続的に設定するには、[コントロールパネル] の [ システム] アプリケーションを使用して変数を保存します。または、変数を PowerShell プロファイルに追加すると、その変数を今後のすべての PowerShell セッションに設定できます。環境変数の保存やそれをセッション間で永続的に維持する詳細については、PowerShell ドキュメントを参照してください。