EC2のインスタンスプロファイルとIAMロールの実務上の違い
毎度おなじみのクラスメソットさんがわかりやすい dev.classmethod.jp
インスタンスプロファイルってなに?
インスタンスプロファイルは IAM ロールのコンテナであり、 インスタンスの起動時に EC2 インスタンスにロール情報を渡すために使用できます。
書いてある通り、IAMRoleを納めるための容器であり、EC2にアタッチする時に必要なコネクターの役割をします。
引用元に書いてある通りなんですが、 インスタンスプロファイルとiamロールが
- 1対Nになってる
- EC2に紐づけられるのはIAMロールそのものじゃなくてインスタンスプロファイル
サンプルで記載されているCloudformationのEC2立ち上げの設定を読んでみると
IamInstanceProfile: !Ref myInstanceProfile
iamロールを付与してるわけじゃなくてインスタンスプロファイルを指定してる
実務上意識することってどういうことなのかと勝手に解釈
該当記事を読んだ感じだとaws cliやcloudformationでインスタンスを立ち上げる時に理解していないとハマるってことかと思う。 コンソールから立ち上げるとIAMロールをそのままアタッチしてるように見えるけどそうではない。
繰り返しになるが EC2にアタッチするのはIAMロールではなくて「IAMロールを付与したインスタンスプロファイルである」ってことかと。