認証とアクセス認証情報 - AWS Command Line Interface

認証とアクセス認証情報

AWS サービスを使用して開発するときは、AWS CLI が AWS との間でどのように認証するかを確立する必要があります。AWS CLI にプログラムでアクセスするための認証情報を設定するには、次のいずれかのオプションを選択します。オプションは推奨順になっています。

プログラムによるアクセスを必要とするユーザー 目的 手順

ワークフォース ID (AWS IAM Identity Center (successor to AWS Single Sign-On) ユーザー)

(推奨) 短期の認証情報を使用します。 AWS IAM Identity Center (successor to AWS Single Sign-On) を使用するための AWS CLI の設定
IAM 短期の認証情報を使用します。 短期の認証情報を使用した認証
IAM

またはワークフォース ID (AWS IAM Identity Center (successor to AWS Single Sign-On) ユーザー)

Amazon EC2 インスタンスメタデータを認証情報に使用します。 Amazon EC2 インスタンスメタデータの認証情報の使用
IAM

またはワークフォース ID (AWS IAM Identity Center (successor to AWS Single Sign-On) ユーザー)

別の認証情報メソッドと組み合わせてアクセス許可のロールを継承します。 AWS CLI での IAM ロールの使用
IAM (非推奨) 長期の認証情報を使用します。 IAM ユーザーの認証情報を使用した認証
IAM

またはワークフォース ID (AWS IAM Identity Center (successor to AWS Single Sign-On) ユーザー)

(非推奨) 別の認証情報メソッドと組み合わせます。ただし、AWS CLI 以外の場所に保存されている認証情報値を使用します。 外部プロセスを使用した認証情報の調達

設定と認証情報の優先順位

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

  1. コマンドラインオプション - --region--output--profile パラメータなど、他の任意の場所にある設定を上書きします。

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

  3. ロールの継承 - 設定または aws sts assume-role コマンドを通じて IAM ロールのアクセス許可を継承します。

  4. ウェブ ID によるロールの継承 - 設定または aws sts assume-role コマンドを通じてウェブ ID を使用して IAM ロールのアクセス許可を継承します。

  5. AWS IAM Identity Center (successor to AWS Single Sign-On) - IAM Identity Center の認証情報は config ファイルに保存され、aws configure sso コマンドを実行すると更新されます。「config」ファイルは、Linux または macOS では「~/.aws/config」、Windows では「C:\Users\USERNAME\.aws\config」にあります。

  6. 認証情報ファイル – コマンド aws configure を実行すると、credentials ファイルと config ファイルが更新されます。「credentials」ファイルは、Linux または macOS では「~/.aws/credentials」、Windows では「C:\Users\USERNAME\.aws\credentials」にあります。

  7. カスタムプロセス — 外部ソースから認証情報を取得します。

  8. 設定ファイル - コマンド aws configure を実行すると、credentials ファイルと config ファイルが更新されます。「config」ファイルは、Linux または macOS では「~/.aws/config」、Windows では「C:\Users\USERNAME\.aws\config」にあります。

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

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

このセクションのその他のトピック