名前付きプロファイル - AWS Command Line Interface

名前付きプロファイル

名前付きプロファイルは、AWS CLI コマンドに適用できる設定と認証情報の集まりです。コマンドを実行するプロファイルを指定すると、設定と認証情報を使用してそのコマンドが実行されます。「デフォルト」のプロファイルを 1 つ指定でき、プロファイルが明示的に参照されない場合に使用されます。他のプロファイルには、コマンドラインで個々のコマンドのパラメータとして指定できる名前が付いています。または、環境変数 (AWS_PROFILE) でプロファイルを指定できます。このプロファイルは、そのセッションで実行されるコマンドのデフォルトのプロファイルを実質的に上書きします。

AWS CLI では、config ファイルおよび credentials ファイルに保存された複数の名前付きプロファイルのいずれかを使用することができます。追加のプロファイルを設定するには、--profile オプションで aws configure を使用するか、config ファイルと credentials ファイルにエントリを追加します。

2 つのプロファイルのある credentials ファイルの例を以下に示します。1 つ目 [default] は CLI コマンドをプロファイルなしで実行するときに使用します。2 つ目は CLI コマンドに --profile user1 パラメータを指定して実行するときに使用します。

~/.aws/credentials (Linux & Mac) または %USERPROFILE%\.aws\credentials (Windows)

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY [user1] aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY

各プロファイルは異なる認証情報 (異なる IAM ユーザーのもの) を指定できます。また、別の AWS リージョンおよび出力形式を指定することもできます。

~/.aws/config (Linux & Mac) または %USERPROFILE%\.aws\config (Windows)

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text
重要

credentials ファイルでは、CLI config ファイルの名前付きプロファイルとは別の命名形式を使用します。config ファイルで名前付きプロファイルを設定する場合のみ、プレフィックス "profile" を含めてください。credentials ファイルにエントリを作成するときは、profile という単語を使用しないでください

AWS CLI でのプロファイルの使用

名前付きプロファイルを使用するには、コマンドに --profile profile-name オプションを追加します。次の例では、前のサンプルファイルの user1 プロファイルで定義された認証情報と設定を使用して、すべての Amazon EC2 インスタンスを一覧表示します。

$ aws ec2 describe-instances --profile user1

複数のコマンドで名前付きプロファイルを使用するには、コマンドラインに AWS_PROFILE 環境変数を設定することで、すべてのコマンドでプロファイルを指定せずにすみます。

Linux または macOS

$ export AWS_PROFILE=user1

Windows

C:\> setx AWS_PROFILE user1

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

setx を使用して環境変数を設定すると、コマンドの実行後に作成するすべてのコマンドシェルの値が変更されます。コマンドの実行時に既に実行されているコマンドシェルには影響しません。変更の影響を確認するには、コマンドシェルを閉じて再起動します。

環境変数を設定すると、シェルセッションの終了時まで、または変数に別の値を設定するまで、デフォルトのプロファイルが変更されます。環境変数をシェルのスタートアップスクリプトに配置すると、今後のセッションでこの環境変数を永続的にできます。詳細については、「AWS CLI を設定する環境変数」を参照してください。

注記

個々のコマンドで --profile を使用してプロファイルを指定すると、そのコマンドのみの環境変数で指定された設定が上書きされます。