スキップしてコンテンツを表示

Amazon EC2 インスタンス上のインスタンスプロファイルをアタッチまたは置き換えるにはどうすればよいですか?

所要時間1分
0

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスのインスタンスプロファイルをアタッチまたは置き換えたいと考えています。

解決策

必要条件: EC2 インスタンスを起動する権限、および AWS Identity and Access Management (IAM) ロールを渡す権限が必要です。

EC2 インスタンスでインスタンスプロファイルをアタッチするか、置き換えるには、IAM ロールを作成します。IAM ロールの作成には、AWS マネジメントコンソールまたは AWS コマンドラインインターフェイス (AWS CLI) を使用します。AWS CLI を使用する場合は、インスタンスプロファイルの作成にも AWS CLI を使用する必要があります。IAM ロール名とインスタンスプロファイル名には、異なる名前を指定できます。AWS マネジメントコンソールを使用する場合、インスタンスプロファイルとロール名は同じです。

IAM ロールを作成する

AWS マネジメントコンソールを使用する

次の手順を実行します。

  1. Amazon EC2 コンソールを開き、[インスタンス] をクリックします。
  2. IAM ロールをアタッチするインスタンスを選択します。
  3. [詳細] から [IAM ロール] を探し、IAM ロールがインスタンスにアタッチされていることを確認します。
    重要: インスタンスの権限は、アタッチされた IAM ロールに基づいて変更されます。IAM ロールを変更すると、インスタンスで実行されるアプリケーションが影響を受ける可能性があります。IAM ロールを変更する前に、インスタンスで実行されているアプリケーションが AWS サービスへのアクセスを維持できることを確認します。
  4. [アクション] メニューを選択し、[セキュリティ] を選択します。
  5. [IAM ロールの変更] を選択します。
    注: Amazon EC2 は、インスタンスプロファイルを IAM ロールのコンテナとして使用します。
  6. [IAM ロールを選択] でアタッチするインスタンスプロファイルを選択します。
  7. [保存] を選択します。

AWS CLI を使用する

注: AWS CLI のコマンドの実行時にエラーが発生する場合は、「AWS CLI でのエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

注: 次のコマンドでは、PROFILENAME を EC2 インスタンスのプロファイル名に、ROLENAME をロール名に、INSTANCE-ID をインスタンス ID に置き換えてください。

次の手順を実行します。

  1. 次の create-instance-profile コマンドを実行してインスタンスプロファイルを作成します。

    aws iam create-instance-profile --instance-profile-name PROFILENAME
  2. 次の add-role-to-instance-profile コマンドを実行してロールをインスタンスプロファイルに追加します。

    aws iam add-role-to-instance-profile --instance-profile-name PROFILENAME --role-name ROLENAME
  3. 次の associate-iam-instance-profile コマンドを実行してインスタンスプロファイルをインスタンスにアタッチします。

    aws ec2 associate-iam-instance-profile --iam-instance-profile Name=PROFILENAME --instance-id i-012345678910abcde

    インスタンスにインスタンスプロファイルが関連付けられている場合、associate-iam-instance-profile コマンドを実行できません。この問題を解決するには、describe-iam-instance-profile-associations コマンドを実行して関連するインスタンス ID を取得します。次に、replace-iam-instance-profile-association コマンドを実行してインスタンスプロファイルを置き換えます。または、disassociate-iam-instance-profile コマンドを実行してインスタンスプロファイルをデタッチしてから、associate-iam-instance-profile コマンドを再度実行します。

  4. IAM ロールがインスタンスにアタッチされていることを確認するには、describe-iam-instance-profile-sociations コマンドを実行します。

    aws ec2 describe-iam-instance-profile-associations --filters Name=INSTANCE-ID,Values=i-012345678910abcde

関連情報

IAM ロールを使用して Amazon EC2 インスタンスで実行されるアプリケーションに権限を付与する

インスタンスプロファイルを使用する

IAM と Amazon EC2 のトラブルシューティング

コメントはありません

関連するコンテンツ