

# Using Amazon EC2 instance metadata as credentials in the AWS CLI
<a name="cli-configure-metadata"></a>

Amazon Elastic Compute Cloud (Amazon EC2) インスタンス内から AWS CLI を実行すると、コマンドへの認証情報の提供を簡素化できます。各 Amazon EC2 インスタンスには、AWS CLI が一時的な認証情報を直接クエリできるメタデータが含まれています。IAM ロールがインスタンスにアタッチされている場合、AWS CLI はインスタンスメタデータから認証情報を自動的かつ安全に取得します。

このサービスを無効にするには、[AWS\_EC2\_METADATA\_DISABLED](cli-configure-envvars.md#envvars-list-AWS_EC2_METADATA_DISABLED) 環境変数を使用します。

**Topics**
+ [前提条件](#cli-configure-metadata-prereqs)
+ [Amazon EC2 メタデータのプロファイルの設定](#cli-configure-metadata-configure)

## 前提条件
<a name="cli-configure-metadata-prereqs"></a>

AWS CLI で Amazon EC2 認証情報を使用するには、以下を完了する必要があります。
+ AWS CLI をインストールして設定します。詳細については、「[AWS CLI の最新バージョンのインストールまたは更新](getting-started-install.md)」および「」を参照してください。[Authentication and access credentials for the AWS CLI](cli-chap-authentication.md)
+ 設定ファイルおよび名前付きプロファイルについて理解します。詳細については、「[Configuration and credential file settings in the AWS CLI](cli-configure-files.md)」を参照してください。
+ 必要なリソースへのアクセス権を持つ AWS Identity and Access Management (IAM) ロールが作成されており、Amazon EC2 インスタンスの起動時にそのロールをインスタンスに割り当てた。詳細については、「*Amazon EC2 ユーザーガイド*」の「[Amazon EC2 の IAM ポリシー](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-policies-for-amazon-ec2.html)」および「*IAM ユーザーガイド*」の「[Amazon EC2 インスタンスで実行されるアプリケーションに AWS リソースへのアクセス許可を付与する](https://docs.aws.amazon.com/IAM/latest/UserGuide/role-usecase-ec2app.html)」を参照してください。

## Amazon EC2 メタデータのプロファイルの設定
<a name="cli-configure-metadata-configure"></a>

ホスティングする Amazon EC2 インスタンスプロファイルで使用可能な認証情報の使用を指定するには、設定ファイルの名前付きプロファイルで次の構文を使用します。詳細な手順については、以下のステップを参照してください。

```
[profile {{profilename}}]
role_arn = {{arn:aws:iam::123456789012:role/rolename}}
credential_source = Ec2InstanceMetadata
region = {{region}}
```

1. 設定ファイルにプロファイルを作成します。

   ```
   [profile {{profilename}}]
   ```

1. 必要なリソースにアクセスできる IAM arn ロールを追加します。

   ```
   role_arn = {{arn:aws:iam::123456789012:role/rolename}}
   ```

1. 認証情報のソースとして `Ec2InstanceMetadata` を指定します。

   ```
   credential_source = Ec2InstanceMetadata
   ```

1. リージョンを設定します。

   ```
   region = {{region}}
   ```

**例**

次の例では、{{`marketingadminrole`}} ロールを引き受け、`{{marketingadmin}}` という名前の Amazon EC2 インスタンスプロファイルの `{{us-west-2}}` リージョンを使用します。

```
[profile {{marketingadmin}}]
role_arn = {{arn:aws:iam::123456789012:role/marketingadminrole}}
credential_source = Ec2InstanceMetadata
region = {{us-west-2}}
```