の環境変数の設定 AWS CLI - AWS Command Line Interface

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

の環境変数の設定 AWS CLI

環境変数は、設定オプションと認証情報を指定する別の方法を提供し、スクリプト作成に役立ちます。

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

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

優先順位と、 が使用する認証情報 AWS CLI を決定する方法の詳細については、「」を参照してくださいの設定 AWS CLI

環境変数の設定方法

次の例では、デフォルトのユーザーの環境変数を設定する方法を示します。

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

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

Windows Command Prompt

すべてのセッションに設定するには

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

setx を使用して環境変数を設定すると、現在のコマンドプロンプトセッションおよびコマンド実行後に作成するすべてのコマンドプロンプトセッションで使用する値が変更されます。これは、コマンド実行時にすでに実行されている他のコマンドシェルには影響を及ぼしません。設定をロードするには、ターミナルの再起動が必要になる場合があります。

現在のセッションのみに設定するには

set を使用して環境変数を設定すると、現在のコマンドプロンプトセッションの終了時まで、または変数を別の値に設定するまで、使用する値が変更されます。

C:\> set AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE C:\> set AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY C:\> set AWS_DEFAULT_REGION=us-west-2
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 ドキュメントを参照してください。

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

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

AWS_ACCESS_KEY_ID

IAM アカウントに関連付けられた AWS アクセスキーを指定します。

定義されている場合、この環境変数はプロファイル設定 aws_access_key_id の値よりも優先されます。アクセスキー ID をコマンドラインオプションを使用して指定することはできません。

AWS_CA_BUNDLE

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

定義されている場合、この環境変数はプロファイル設定 ca_bundle の値よりも優先されます。この環境変数は、--ca-bundle コマンドラインパラメータを使用して上書きできます。

AWS_CLI_AUTO_PROMPT

AWS CLI バージョン 2 の自動プロンプトを有効にします。使用できる設定は 2 つあります。

  • on は、ユーザーが aws コマンドを実行しようとするたびに、完全な自動プロンプトモードを使用します。これには、完全なコマンドまたは不完全なコマンドの両方のENTER後に を押すことが含まれます。

  • on-partial は、部分的な自動プロンプトモードを使用します。コマンドが不完全、またはクライアント側の検証エラーが原因でコマンドを実行できない場合は、自動プロンプトが使用されます。このモードは、既存のスクリプトやランブックがある場合や、すべてのコマンドでプロンプトされるのではなく、慣れていないコマンドに対してのみ自動プロンプトを表示する場合に便利です。

定義されている場合は、この環境変数が cli_auto_prompt プロファイル設定の値を上書きします。この環境変数は、--cli-auto-prompt および --no-cli-auto-prompt コマンドラインパラメータを使用して上書きできます。

AWS CLI バージョン 2 自動プロンプト機能の詳細については、「」を参照してくださいでのコマンドプロンプトの有効化と使用 AWS CLI

AWS_CLI_FILE_ENCODING

テキストファイルに使用するエンコードを指定します。デフォルトでは、エンコードはロケールと一致します。ロケールとは異なるエンコードを設定するには、aws_cli_file_encoding 環境変数を使用します。例えば、Windows をデフォルトのエンコーディング で使用する場合CP1252、 を設定すると、 を使用してテキストファイルを開くCLIように aws_cli_file_encoding=UTF-8が設定されますUTF-8

AWS_CLI_S3_MV_VALIDATE_SAME_S3_PATHS

カスタムs3 mvコマンドを使用するときにソースバケットと宛先バケットが同じ場合、ソースファイルまたはオブジェクトをそれ自体に移動できるため、ソースファイルまたはオブジェクトが誤って削除される可能性があります。AWS_CLI_S3_MV_VALIDATE_SAME_S3_PATHS 環境変数 と --validate-same-s3-pathsオプションは、Amazon S3 ソースARNsまたは宛先 でアクセスポイントまたはアクセスポイントエイリアスを検証するかどうかを指定しますURIs。

注記

のパス検証には追加のAPI呼び出しs3 mvが必要です。

AWS_CONFIG_FILE

が設定プロファイルの保存 AWS CLI に使用するファイルの場所を指定します。デフォルトのパスは ~/.aws/config です。

この値は、名前付きプロファイル設定に指定したり、コマンドラインパラメータを使用して指定したりすることはできません。

AWS_DATA_PATH

AWS CLI データのロード~/.aws/models時に の組み込み検索パス外でチェックする追加のディレクトリのリスト。環境変数を設定することで、組み込まれた検索パスに戻る前に最初にチェックする追加のディレクトリを表示します。複数のエントリは os.pathsep 文字で区切る必要があり、Linux または macOS では :、Windows では ; を使用します。

AWS_DEFAULT_OUTPUT

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

定義されている場合、この環境変数はプロファイル設定 output の値よりも優先されます。この環境変数は、--output コマンドラインパラメータを使用して上書きできます。

AWS_DEFAULT_REGION

は、デフォルトでリクエストを送信するサーバーがある AWS リージョンDefault region nameを識別します。通常、お客様の最寄りのリージョンですが、どのリージョンでもかまいません。例えば、「us-west-2」と入力すると、米国西部 (オレゴン) を使用できます。これは、個別のコマンドで指定されない限り、今後のすべてのリクエストが送信されるリージョンです。

注記

を使用するときは AWS CLI、明示的に、またはデフォルトの AWS リージョンを設定して、リージョンを指定する必要があります。使用可能なリージョンのリストについては、「リージョンとエンドポイント」を参照してください。で使用されるリージョン識別子 AWS CLI は、 および サービスエンドポイントに表示される AWS Management Console URLsものと同じ名前です。

定義されている場合、この環境変数はプロファイル設定 region の値よりも優先されます。--region コマンドラインパラメータ と互換性のある環境変数 を使用して、このAWS_REGION環境変数を AWS SDK上書きできます。

AWS_EC2_METADATA_DISABLED

Amazon EC2インスタンスメタデータサービス () の使用を無効にしますIMDS。

true に設定すると、ユーザー認証情報または設定 (リージョンなど) は からリクエストされませんIMDS。

AWS_ENDPOINT_URL

すべてのサービスリクエストに使用されるエンドポイントを指定します。

エンドポイント設定は、システム環境変数やユーザー環境変数、ローカル AWS 設定ファイルなど複数の場所に配置され、コマンドラインでパラメータとして明示的に宣言されます。 AWS CLI エンドポイント構成設定は、次の順序で優先されます。

  1. --endpoint-url コマンドラインオプション。

  2. 有効にすると、AWS_IGNORE_CONFIGURED_ENDPOINT_URLS グローバルエンドポイント環境変数またはプロファイル設定 ignore_configure_endpoint_urls はカスタムエンドポイントを無視します。

  3. サービス固有の環境変数 AWS_ENDPOINT_URL_<SERVICE> (AWS_ENDPOINT_URL_DYNAMODB など) によって提供される値。

  4. AWS_USE_DUALSTACK_ENDPOINTAWS_USE_FIPS_ENDPOINT、および AWS_ENDPOINT_URL 環境変数によって提供される値。

  5. 共有 config ファイルの services セクション内の endpoint_url 設定によって提供されるサービス固有のエンドポイント値。

  6. 共有 config ファイルの profile 内の endpoint_url 設定によって提供される値。

  7. use_dualstack_endpointuse_fips_endpoint、および endpoint_url の設定。

  8. それぞれの URLのデフォルトエンドポイント AWS のサービス が最後に使用されます。各リージョンで使用できる標準的なサービスエンドポイントについては、「Amazon Web Services 全般のリファレンス」の「AWS リージョンとエンドポイント」を参照してください。

AWS_ENDPOINT_URL_<SERVICE>

特定のサービスに使用されるカスタムエンドポイントを指定します。 <SERVICE> は AWS のサービス 識別子に置き換えられます。例えば、 には serviceIdの Amazon DynamoDB がありますDynamoDB。このサービスの場合、エンドポイントURL環境変数は ですAWS_ENDPOINT_URL_DYNAMODB

サービス固有の環境変数のリストについては、「サービス固有の識別子のリスト」を参照してください。

エンドポイント設定は、システム環境変数やユーザー環境変数、ローカル AWS 設定ファイルなど複数の場所に配置され、コマンドラインでパラメータとして明示的に宣言されます。 AWS CLI エンドポイント構成設定は、次の順序で優先されます。

  1. --endpoint-url コマンドラインオプション。

  2. 有効にすると、AWS_IGNORE_CONFIGURED_ENDPOINT_URLS グローバルエンドポイント環境変数またはプロファイル設定 ignore_configure_endpoint_urls はカスタムエンドポイントを無視します。

  3. サービス固有の環境変数 AWS_ENDPOINT_URL_<SERVICE> (AWS_ENDPOINT_URL_DYNAMODB など) によって提供される値。

  4. AWS_USE_DUALSTACK_ENDPOINTAWS_USE_FIPS_ENDPOINT、および AWS_ENDPOINT_URL 環境変数によって提供される値。

  5. 共有 config ファイルの services セクション内の endpoint_url 設定によって提供されるサービス固有のエンドポイント値。

  6. 共有 config ファイルの profile 内の endpoint_url 設定によって提供される値。

  7. use_dualstack_endpointuse_fips_endpoint、および endpoint_url の設定。

  8. それぞれの URLのデフォルトエンドポイント AWS のサービス が最後に使用されます。各リージョンで使用できる標準的なサービスエンドポイントについては、「Amazon Web Services 全般のリファレンス」の「AWS リージョンとエンドポイント」を参照してください。

AWS_IGNORE_CONFIGURED_ENDPOINT_URLS

有効にすると、 はすべてのカスタムエンドポイント設定 AWS CLI を無視します。有効な値は、true および false です。

エンドポイント設定は、システム環境変数やユーザー環境変数、ローカル AWS 設定ファイルなど複数の場所に配置され、コマンドラインでパラメータとして明示的に宣言されます。 AWS CLI エンドポイント構成設定は、次の順序で優先されます。

  1. --endpoint-url コマンドラインオプション。

  2. 有効にすると、AWS_IGNORE_CONFIGURED_ENDPOINT_URLS グローバルエンドポイント環境変数またはプロファイル設定 ignore_configure_endpoint_urls はカスタムエンドポイントを無視します。

  3. サービス固有の環境変数 AWS_ENDPOINT_URL_<SERVICE> (AWS_ENDPOINT_URL_DYNAMODB など) によって提供される値。

  4. AWS_USE_DUALSTACK_ENDPOINTAWS_USE_FIPS_ENDPOINT、および AWS_ENDPOINT_URL 環境変数によって提供される値。

  5. 共有 config ファイルの services セクション内の endpoint_url 設定によって提供されるサービス固有のエンドポイント値。

  6. 共有 config ファイルの profile 内の endpoint_url 設定によって提供される値。

  7. use_dualstack_endpointuse_fips_endpoint、および endpoint_url の設定。

  8. それぞれの URLのデフォルトエンドポイント AWS のサービス が最後に使用されます。各リージョンで使用できる標準的なサービスエンドポイントについては、「Amazon Web Services 全般のリファレンス」の「AWS リージョンとエンドポイント」を参照してください。

AWS_MAX_ATTEMPTS

AWS CLI 再試行ハンドラーが使用する最大再試行回数の値を指定します。最初の呼び出しは、指定した値にカウントされます。再試行の詳細については、「AWS CLI での再試行 AWS CLI」を参照してください。

定義されている場合、この環境変数はプロファイル設定 max_attempts の値よりも優先されます。

AWS_METADATA_SERVICE_NUM_ATTEMPTS

IAM ロールで設定された Amazon EC2インスタンスの認証情報を取得しようとすると、 は停止する前にインスタンスメタデータサービスから認証情報を 1 回取得 AWS CLI しようとします。コマンドが Amazon EC2インスタンスで実行されることがわかっている場合は、この値を増やして、あきらめる前に複数回 AWS CLI 再試行できます。

AWS_METADATA_SERVICE_TIMEOUT

インスタンスメタデータサービスに接続する前にタイムアウトするまでの秒数。IAM ロールで設定された Amazon EC2インスタンスの認証情報を取得しようとすると、インスタンスメタデータサービスへの接続はデフォルトで 1 秒後にタイムアウトします。IAM ロールが設定された Amazon EC2インスタンスで を実行していることがわかっている場合は、必要に応じてこの値を増やすことができます。

AWS_PAGER

出力に使用されるページャープログラムを指定します。デフォルトでは、 AWS CLI バージョン 2 はオペレーティングシステムのデフォルトのページャープログラムを通じてすべての出力を返します。

外部ページングプログラムの使用をすべて無効にするには、変数を空の文字列に設定します。

定義されている場合、この環境変数はプロファイル設定 cli_pager の値よりも優先されます。

AWS_PROFILE

使用する認証情報とオプションを含む AWS CLI プロファイルの名前を指定します。これは、credentials ファイルまたは config ファイルに保存されているプロファイルの名前、または、デフォルトプロファイルを使用する場合は値 default となります。

この環境変数を指定した場合、設定ファイルの [default] という名前のプロファイルを使用する動作は上書きされます。この環境変数は、--profile コマンドラインパラメータを使用して上書きできます。

AWS_REGION

リクエストを送信するリージョンを指定する AWS SDK AWS 互換性のある環境変数。

定義されている場合、この環境変数は環境変数 AWS_DEFAULT_REGION とプロファイル設定 region の値を上書きします。この環境変数は、--region コマンドラインパラメータを使用して上書きできます。

AWS_RETRY_MODE

使用する再試行モードを指定します AWS CLI 。再試行モードには、レガシー (デフォルト)、標準、アダプティブの 3 つがあります。再試行の詳細については、「AWS CLI での再試行 AWS CLI」を参照してください。

定義されている場合、この環境変数はプロファイル設定 retry_mode の値よりも優先されます。

AWS_ROLE_ARN

AWS CLI コマンドの実行に使用するウェブ ID プロバイダーを持つIAMロールの Amazon リソースネーム (ARN) を指定します。

AWS_WEB_IDENTITY_TOKEN_FILE および AWS_ROLE_SESSION_NAME 環境変数で使用されます。

定義されている場合、この環境変数はプロファイル設定 role_arn の値よりも優先されます。ロールセッション名をコマンドラインパラメータとして指定することはできません。

注記

この環境変数は、ウェブ ID プロバイダを使用したロール継承にのみ適用され、一般的なロール継承プロバイダ設定には適用されません。

ウェブ ID の使用の詳細については、「ウェブ ID を使用したロールの継承」を参照してください。

AWS_ROLE_SESSION_NAME

ロールセッションにアタッチする名前を指定します。この値は、 が AssumeRole オペレーションを AWS CLI 呼び出すときに RoleSessionNameパラメータに提供され、引き受けたロールユーザー の一部になりますARN arn:aws:sts::123456789012:assumed-role/role_name/role_session_name。このパラメータはオプションです。この値を指定しない場合、セッション名は自動的に生成されます。この名前は、このセッションに関連付けられたエントリの AWS CloudTrail ログに表示されます。

定義されている場合、この環境変数はプロファイル設定 role_session_name の値よりも優先されます。

AWS_ROLE_ARN および AWS_WEB_IDENTITY_TOKEN_FILE 環境変数で使用されます。

ウェブ ID の使用の詳細については、「ウェブ ID を使用したロールの継承」を参照してください。

注記

この環境変数は、ウェブ ID プロバイダを使用したロール継承にのみ適用され、一般的なロール継承プロバイダ設定には適用されません。

AWS_SDK_UA_APP_ID

単一の を複数のカスタマーアプリケーションで使用して、 を呼び出し AWS アカウント ます AWS のサービス。アプリケーション ID は、 を使用して一連の呼び出しを行ったソースアプリケーションを識別します AWS のサービス。 AWS SDKs および サービスは、この値を 以外の方法で使用または解釈して、カスタマーコミュニケーションに返します。例えば、この値を運用 E メールに含めることで、通知に関連付けられているアプリケーションを特定できます。

デフォルトでは、値はありません。

アプリケーション ID は、最大長が 50 文字の文字列です。文字、数字、および次の特殊文字を使用できます。

! $ % & * + - . , ^ _ ` | ~

定義されている場合、この環境変数はプロファイル設定 sdk_ua_app_id の値よりも優先されます。コマンドラインオプションとしてアプリケーション ID を指定することはできません。

AWS_SECRET_ACCESS_KEY

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

定義されている場合、この環境変数はプロファイル設定 aws_secret_access_key の値よりも優先されます。シークレットアクセスキー ID をコマンドラインオプションとして指定することはできません。

AWS_SESSION_TOKEN

AWS STS オペレーションから直接取得した一時的なセキュリティ認証情報を使用している場合に必要なセッショントークン値を指定します。詳細については、AWS CLI コマンドリファレンスにある assume-role コマンドの「出力」セクションを参照してください。

定義されている場合、この環境変数はプロファイル設定 aws_session_token の値よりも優先されます。

AWS_SHARED_CREDENTIALS_FILE

がアクセスキーの保存 AWS CLI に使用するファイルの場所を指定します。デフォルトのパスは ~/.aws/credentials です。

この値は、名前付きプロファイル設定に指定したり、コマンドラインパラメータを使用して指定したりすることはできません。

AWS_USE_DUALSTACK_ENDPOINT

デュアルスタックエンドポイントを使用して AWS リクエストを送信できるようにします。IPv4 と トラフィックの両方をサポートするデュアルスタックエンドポイントの詳細については、Amazon S3 デュアルスタックエンドポイントの使用IPv6」を参照してください。 デュアルスタックのエンドポイントは、一部のリージョンでは一部のサービスで利用できます。サービスまたは にデュアルスタックエンドポイントが存在しない場合 AWS リージョン、リクエストは失敗します。これはデフォルトでは無効になっています。

エンドポイント設定は、システム環境変数やユーザー環境変数、ローカル AWS 設定ファイルなど複数の場所に配置され、コマンドラインでパラメータとして明示的に宣言されます。 AWS CLI エンドポイント構成設定は、次の順序で優先されます。

  1. --endpoint-url コマンドラインオプション。

  2. 有効にすると、AWS_IGNORE_CONFIGURED_ENDPOINT_URLS グローバルエンドポイント環境変数またはプロファイル設定 ignore_configure_endpoint_urls はカスタムエンドポイントを無視します。

  3. サービス固有の環境変数 AWS_ENDPOINT_URL_<SERVICE> (AWS_ENDPOINT_URL_DYNAMODB など) によって提供される値。

  4. AWS_USE_DUALSTACK_ENDPOINTAWS_USE_FIPS_ENDPOINT、および AWS_ENDPOINT_URL 環境変数によって提供される値。

  5. 共有 config ファイルの services セクション内の endpoint_url 設定によって提供されるサービス固有のエンドポイント値。

  6. 共有 config ファイルの profile 内の endpoint_url 設定によって提供される値。

  7. use_dualstack_endpointuse_fips_endpoint、および endpoint_url の設定。

  8. それぞれの URLのデフォルトエンドポイント AWS のサービス が最後に使用されます。各リージョンで使用できる標準的なサービスエンドポイントについては、「Amazon Web Services 全般のリファレンス」の「AWS リージョンとエンドポイント」を参照してください。

AWS_USE_FIPS_ENDPOINT

一部の AWS サービスでは、 の一部で連邦情報処理標準 (FIPS) 140-2 をサポートするエンドポイントを提供しています AWS リージョン。 AWS サービスが をサポートする場合FIPS、この設定は AWS CLI を使用するFIPSエンドポイントを指定します。標準 AWS エンドポイントとは異なり、FIPSエンドポイントは 140-2 FIPS に準拠したTLSソフトウェアライブラリを使用します。このエンドポイントは、米国政府とやり取りをする企業で必要とされる場合があります。

この設定が有効になっていても、 のサービスにFIPSエンドポイントが存在しない場合 AWS リージョン、 AWS コマンドは失敗する可能性があります。この場合は、--endpoint-url オプションを使用してコマンドで使用するエンドポイントを手動で指定するか、サービス固有のエンドポイントを使用します。

によるFIPSエンドポイントの指定の詳細については AWS リージョン、FIPS「サービスによるエンドポイント」を参照してください。

エンドポイント設定は、システム環境変数やユーザー環境変数、ローカル AWS 設定ファイルなど複数の場所に配置され、コマンドラインでパラメータとして明示的に宣言されます。 AWS CLI エンドポイント構成設定は、次の順序で優先されます。

  1. --endpoint-url コマンドラインオプション。

  2. 有効にすると、AWS_IGNORE_CONFIGURED_ENDPOINT_URLS グローバルエンドポイント環境変数またはプロファイル設定 ignore_configure_endpoint_urls はカスタムエンドポイントを無視します。

  3. サービス固有の環境変数 AWS_ENDPOINT_URL_<SERVICE> (AWS_ENDPOINT_URL_DYNAMODB など) によって提供される値。

  4. AWS_USE_DUALSTACK_ENDPOINTAWS_USE_FIPS_ENDPOINT、および AWS_ENDPOINT_URL 環境変数によって提供される値。

  5. 共有 config ファイルの services セクション内の endpoint_url 設定によって提供されるサービス固有のエンドポイント値。

  6. 共有 config ファイルの profile 内の endpoint_url 設定によって提供される値。

  7. use_dualstack_endpointuse_fips_endpoint、および endpoint_url の設定。

  8. それぞれの URLのデフォルトエンドポイント AWS のサービス が最後に使用されます。各リージョンで使用できる標準的なサービスエンドポイントについては、「Amazon Web Services 全般のリファレンス」の「AWS リージョンとエンドポイント」を参照してください。

AWS_WEB_IDENTITY_TOKEN_FILE

ID プロバイダーが提供する OAuth 2.0 アクセストークンまたは OpenID Connect ID トークンを含むファイルへのパスを指定します。 AWS CLI はこのファイルの内容をロードし、WebIdentityToken 引数として AssumeRoleWithWebIdentity オペレーションに渡します。

AWS_ROLE_ARN および AWS_ROLE_SESSION_NAME 環境変数で使用されます。

定義されている場合、この環境変数はプロファイル設定 web_identity_token_file の値よりも優先されます。

ウェブ ID の使用の詳細については、「ウェブ ID を使用したロールの継承」を参照してください。

注記

この環境変数は、ウェブ ID プロバイダを使用したロール継承にのみ適用され、一般的なロール継承プロバイダ設定には適用されません。