設定の基本 - AWS Command Line Interface

Python 2.7、3.4、および 3.5 は、AWS CLI バージョン 1 に対して非推奨になっています。詳細については、「AWS CLI バージョンについて」の AWS CLI バージョン 1 セクションを参照してください。

設定の基本

このセクションでは、AWS Command Line Interface (AWS CLI) が AWS と対話するために使用する基本設定をすばやく指定する方法について説明します。これには、セキュリティ認証情報、デフォルトの出力形式、およびデフォルトの AWS リージョンが含まれます。

注記

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

aws configure を使用したクイック設定

一般的な使用の場合、aws configure コマンドが、AWS CLI のインストールをセットアップするための最も簡単な方法です。このコマンドを入力すると、AWS CLI によって 4 つの情報の入力が求められます。

この情報は、AWS CLI により、default ファイルの、credentials という名前のプロファイル (設定のコレクション) に保存されます。デフォルトでは、このプロファイル内の情報は、使用するプロファイルを明示的に指定しない AWS CLI コマンドを実行する場合に使用されます。credentials ファイルの詳細については、「設定ファイルと認証情報ファイルの設定」を参照してください。

次の例は、サンプル値を示しています。次のセクションで説明するように、これらの値を独自の値に置き換えます。

$ 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

アクセスキー ID とシークレットアクセスキー

アクセスキーはアクセスキー ID とシークレットアクセスキーから成り、 に対するプログラムによるリクエストに署名するときに使用されますAWS アクセスキーがない場合は、 から作成することができますAWS Management Console ベストプラクティスとして、必須ではないタスクでは、 AWS アカウント のルートユーザーアクセスキーを使用しないでください。代わりに、自身用のアクセスキーを持つ新しい管理者 IAM ユーザーを作成します。

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

IAM ユーザーのアクセスキーを作成するには

  1. AWS Management Console にサインインして、IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで [Users] (ユーザー) を選択します。

  3. アクセスキーを作成するユーザー名を選択し、[Security credentials (セキュリティ認証情報)] タブを選択します。

  4. [Access keys (アクセスキー)] セクションで、[Create access key (アクセスキーを作成)] を選択します。

  5. 新しいアクセスキーのペアを表示するには、[Show (表示)] を選択します。このダイアログボックスを閉じた後で、シークレットアクセスキーに再度アクセスすることはできません。認証情報は以下のようになります。

    • アクセスキー ID: AKIAIOSFODNN7EXAMPLE

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

  6. キーペアをダウンロードするには、[Download .csv file.csv ] (キーファイルのダウンロード) を選択します。このキーは安全な場所に保存してください。このダイアログボックスを閉じた後で、シークレットアクセスキーに再度アクセスすることはできません。

    AWS アカウント を保護するためにキーは機密にしておき、メールでも送信しないでください。また、所属している組織外にこの情報を公開してはいけません。AWS または Amazon.com を名乗る人物から問い合わせがあった場合でも、この情報は開示しないでください。Amazon を正式に代表する人物がこの情報を要求することは一切ありません。

  7. .csv ファイルをダウンロードしたら、[Close (閉じる)] を選択します。アクセスキーを作成すると、キーペアはデフォルトで有効になり、すぐに使用できるようになります。

関連トピック

Region

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

注記

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

出力形式

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

  • json - 出力は JSON 文字列としてフォーマットされます。

  • yaml - 出力は YAML 文字列としてフォーマットされます。(‭AWS CLI バージョン 2 でのみ使用可能)

  • yaml-stream - 出力はストリームされ、 YAML 文字列としてフォーマットされます。ストリーミングにより、大きなデータタイプの処理を高速化できます。(AWS CLI バージョン 2 でのみ使用可能)

  • text - 出力は、複数行のタブ区切りの文字列値としてフォーマットされます。これは、grepsed、または awk などのテキストプロセッサに出力を渡すのに役立ちます。

  • table - 出力は、テーブルとしてフォーマットされ、文字の「+|-」を使用してセルの境界を形成します。通常、情報は他の形式よりも読みやすい「わかりやすい」形式で表示されますが、プログラムとしては役立ちません。

Profiles

設定のコレクションをプロファイルと呼びます。デフォルトでは、AWS CLI は default プロファイルを使用します。--profile オプションを指定して名前を割り当てることによって、さまざまな認証情報と設定を持つ追加の名前付きプロファイルを作成して使用できます。

次の例では、produser という名前のプロファイルを作成します。

$ aws configure --profile produser 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 profilename を指定し、その名前の下に保存された認証情報と設定を使用できます。

$ aws s3 ls --profile produser

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

プロファイルの詳細については、「名前付きプロファイル」を参照してください。

構成設定と優先順位

AWS CLI は、システム環境変数、ユーザー環境変数、ローカルの AWS 設定ファイル、またはコマンドラインでパラメータとして明示的に宣言されたものなど、複数の場所にある認証情報と構成設定を使用します。特定の場所が他の場所よりも優先されます。AWS CLI 認証情報と構成設定は、次の順序で優先されます。

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

  2. 環境変数 - システムの環境変数に値を格納できます。

  3. CLI 認証情報ファイルcredentialsコマンドを実行すると、config およびaws configureファイルが更新されます。「credentials」ファイルは、Linux または macOS では「~/.aws/credentials」、Windows では「C:\Users\USERNAME\.aws\credentials」にあります。このファイルには、default プロファイルと任意の名前付きプロファイルの認証情報の詳細が含まれています。

  4. CLI 設定ファイル - コマンドcredentialsを実行すると、「config」および「aws configure」ファイルが更新されます。「config」ファイルは、Linux または macOS では「~/.aws/config」、Windows では「C:\Users\USERNAME\.aws\config」にあります。このファイルには、 デフォルトプロファイルとあらゆる名前付きプロファイルの設定が含まれています。

  5. コンテナ認証情報 - IAM ロールを各 Amazon Elastic コンテナサービス (Amazon ECS) タスク定義に関連付けることができます。関連付けられると、そのロールの一時認証情報は、そのタスクのコンテナで使用できるようになります。詳細については、Amazon Elastic Container Service 開発者ガイドの「タスク用の IAM ロール」を参照してください。

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