AWS CLI で Amazon EC2 インスタンスメタデータを認証情報として使用する
Amazon Elastic Compute Cloud (Amazon EC2) インスタンス内から AWS CLI を実行すると、コマンドへの認証情報の提供を簡素化できます。各 Amazon EC2 インスタンスには、AWS CLI が一時的な認証情報を直接クエリできるメタデータが含まれています。IAM ロールがインスタンスにアタッチされている場合、AWS CLI はインスタンスメタデータから認証情報を自動的かつ安全に取得します。
このサービスを無効にするには、AWS_EC2_METADATA_DISABLED 環境変数を使用します。
前提条件
AWS CLI で Amazon EC2 認証情報を使用するには、以下を完了する必要があります。
-
AWS CLI をインストールして設定します。詳細については、AWS CLI の最新バージョンのインストールまたは更新およびAWS CLI の認証とアクセス認証情報を参照してください。
-
設定ファイルおよび名前付きプロファイルについて理解します。詳細については、「AWS CLI での設定と認証情報ファイル設定」を参照してください。
-
必要なリソースへのアクセス権を持つ AWS Identity and Access Management (IAM) ロールが作成されており、Amazon EC2 インスタンスの起動時にそのロールをインスタンスに割り当てた。詳細については、「Amazon EC2 ユーザーガイド」の「IAM policies for Amazon EC2」および「IAM ユーザーガイド」の「Granting Applications That Run on Amazon EC2 Instances Access to AWS Resources」を参照してください。
Amazon EC2 メタデータのプロファイルの設定
ホスティングする Amazon EC2 インスタンスプロファイルで使用可能な認証情報の使用を指定するには、設定ファイルの名前付きプロファイルで次の構文を使用します。詳細な手順については、以下のステップを参照してください。
[profile
profilename
] role_arn =arn:aws:iam::123456789012:role/rolename
credential_source = Ec2InstanceMetadata region =region
-
設定ファイルにプロファイルを作成します。
[profile
profilename
] -
必要なリソースにアクセスできる IAM arn ロールを追加します。
role_arn =
arn:aws:iam::123456789012:role/rolename
-
認証情報のソースとして
Ec2InstanceMetadata
を指定します。credential_source = Ec2InstanceMetadata
-
リージョンを設定します。
region =
region
例
次の例では、
ロールを引き受け、marketingadminrole
という名前の Amazon EC2 インスタンスプロファイルの marketingadmin
リージョンを使用します。us-west-2
[profile
marketingadmin
] role_arn =arn:aws:iam::123456789012:role/marketingadminrole
credential_source = Ec2InstanceMetadata region =us-west-2