AWS Command Line Interface
ユーザーガイド

AWS CLI の設定

このセクションでは、お客様のセキュリティ認証情報、デフォルトの出力形式、デフォルトリージョンなど、AWS CLI が AWS とやり取りする際に使用する設定を指定する方法を説明します。

注記

AWS では、すべての着信リクエストは暗号で署名される必要があります。これは、AWS CLI によって行われます。「署名」には日時スタンプが含まれます。したがって、コンピュータの日付と時刻が正しく設定されていることを確認する必要があります。日時が正しく設定されていない場合、署名の日時が AWS サービスによって認識された日間と大きく異なることがあり、その場合は AWS によってリクエストが却下されます。

クイック設定

一般的な使用の場合、aws configure コマンドが、AWS CLI のインストールをセットアップするための最も簡単な方法です。

aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json

このコマンドを入力すると、AWS CLI によって 4 種類の情報の入力が求められ、default という名前の プロファイル (設定のコレクション) に保存されます。したがって、このプロファイルは、使用するプロファイルを明示的に指定しない AWS CLI コマンドを実行する場合はいつでも使用されます。

アクセスキー/認証情報

AWS Access Key ID および AWS Secret Access Key は、ユーザーの AWS 認証情報です。これらは、付与されるアクセス権限を決定する IAM ユーザーまたはロールに関連付けられています。IAM サービスを使用してユーザーを作成する方法のチュートリアルに関しては、『IAM ユーザーガイド』の「最初の IAM 管理者のユーザーおよびグループの作成」を参照してください。

IAM ユーザーのアクセスキー ID およびシークレットアクセスキーを取得するには

アクセスキーはアクセスキー ID とシークレットアクセスキーから成り、AWS に対するプログラムによるリクエストに署名するときに使用されます。アクセスキーがない場合は、AWS マネジメントコンソールから作成することができます。AWS アカウントのルートユーザー のアクセスキーの代わりに、IAM のアクセスキーを使用することをお勧めします。IAM では、AWS アカウントでの AWS サービスとリソースへのアクセスを安全に制御できます。

シークレットアクセスキーを表示またはダウンロードできるのは、このキーを作成するときのみです。アクセスキーを後で復元することはできません。ただし、新しいアクセスキーはいつでも作成できます。必要な IAM アクションを実行するためのアクセス許可も必要です。詳細については、『IAM ユーザーガイド』の「他の IAM リソースにアクセスするのに必要なアクセス権限」を参照してください。

  1. IAM コンソールを開きます。

  2. コンソールのナビゲーションペインで、[Users] を選択します。

  3. IAM のユーザー名 (チェックボックスではありません) を選択します。

  4. [Security credentials] タブを選択し、次に [Create access key] を選択します。

  5. 新しいアクセスキーを表示するには、[Show] を選択します。認証情報は以下のようになります。

    • アクセスキー ID: AKIAIOSFODNN7EXAMPLE

    • シークレットアクセスキー: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

  6. キーペアをダウンロードするには、[Download .csv file] を選択します。このキーは安全な場所に保存してください。

    AWS アカウントを保護するためにキーは機密にしておき、メールでも送信しないでください。また、所属している組織外にこの情報を公開してはいけません。AWS または Amazon.com を名乗る人物から問い合わせがあった場合でも、この情報は開示しないでください。Amazon のスタッフまたは関係者がこの情報を尋ねることは決してありません。

関連トピック

リージョン

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

注記

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

出力形式

Default output format は、結果の形式を指定します。値は、次下のリストのいずれかの値を指定できます。出力形式を指定しない場合、json がデフォルトとして使用されます。

クイック設定と複数のプロファイル

上記ようにコマンドを使用した場合、結果は 1 つのプロファイルになり、名前には default が指定されます。--profile オプションを使用してプロファイルの名前を指定し、追加設定を作成することもできます。

aws configure --profile user2 AWS Access Key ID [None]: AKIAI44QH8DHBEXAMPLE AWS Secret Access Key [None]: je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY Default region name [None]: us-east-1 Default output format [None]: text

次に、コマンドを実行するとき、--profile オプションを省略して、default プロファイルに保存されている設定を使用します。

aws s3 ls

または、--profile profilename を指定して、その名前で保存されている設定を使用します。

aws s3 ls --profile myuser

設定を更新するには、aws configure を再度実行し (更新するプロファイルに応じて --profile パラメータを指定するか)、必要に応じて、新しい値を入力するだけです。次のセクションでは、aws configure で作成するファイル、追加の設定、名前付きプロファイルについて説明します。

構成設定と優先順位

AWS CLI では、認証情報プロバイダーを使用して、AWS 認証情報を検索します。各認証情報プロバイダーは、システムまたはユーザーの環境変数やローカルの AWS 設定ファイルなどの場所、またはコマンドラインでパラメータとして明示的に宣言されたいくつかの場所を検索します。AWS CLI では、次の順序でプロバイダーを呼び出して、認証情報と構成設定を検索し、使用する認証情報セットが見つかると停止します。

  1. コマンドラインオプション – コマンドラインのパラメータとして --region--output、および --profile を指定できます。

  2. 環境変数 – 環境変数 (AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY、および AWS_SESSION_TOKEN) に値を保存できます。これらの環境変数が存在する場合は、これらの変数が使用されます。

  3. CLI 認証ファイル – これは、コマンド aws configure を実行すると更新されるファイルです。ファイルは、~/.aws/credentials (Linux, macOS, or Unix の場合) または C:\Users\USERNAME\.aws\credentials (Windows の場合) にあります。このファイルには、default プロファイルとあらゆる名前付きプロファイルの認証情報の詳細が含まれています。

  4. CLI 設定ファイル – これは、コマンド aws configure を実行すると更新されるもう 1 つのファイルです。ファイルは、~/.aws/config (Linux, macOS, or Unix の場合) または C:\Users\USERNAME\.aws\config (Windows の場合) にあります。このファイルには、 デフォルトプロファイルとあらゆる名前付きプロファイルの設定が含まれています。

  5. コンテナ認証情報 – IAM ロールと各 Amazon Elastic Container Service タスク定義を関連付けることができます。関連付けられると、そのロールの一時認証情報は、そのタスクのコンテナで使用できるようになります。詳細については、『Amazon Elastic Container Service Developer Guide』の「タスク用の IAM ロール」を参照してください。

  6. インスタンスプロファイル認証情報 – IAM ロールと各 Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを関連付けることができます。関連付けられると、そのロールの一時認証情報は、インスタンスで実行中のコードで使用できるようになります。認証情報は、Amazon EC2 メタデータサービスから提供されます。詳細については、『Linux インスタンス用 Amazon EC2 ユーザーガイド』の「Amazon EC2 の IAM ロール」および『IAM ユーザーガイド』の「インスタンスプロファイルの使用」を参照してください。