AWS
IAM
role
ポリシー
ロール

AWSのIAMロールとポリシーの違い


■概要


◆AWSのIAMとは?(Identity and Access Management)

 AWSのリソースに紐付けることができる権限設定を行うサービスの事。

 (AWSのリソースは、EC2,RDS,Lambda...etcといった全てのサービスで生成するものに必要な物となります)


◆IAMの4つの要素

 IAMには「グループ」、「ユーザ」、「ロール」、「ポリシー」の4つの要素がある。

 (グループとユーザについては別途機会があれば^^;)


■結論

IAMロール(Role) = 「AWSのリソースに付与するもの」で、実態はIAMポリシーをグルーピングしたもの

IAMポリシー(policy) = 「AWSリソースにアクセスするための権限設定」で、AWSが最初から用意してくれている

つまりポリシーはロールに内包されている物であり、ロールはAWSリソースに付与されるものである。

例えば、あるEC2には一つだけIAMロールが付与出来るが、そのロールに様々なポリシーを付与する事で、そのEC2は様々なAWSリソースにアクセスする事が出来るようになる。

(AWSCliコマンドから、S3バケットにアクセスしたり、Lambdaを実行したり出来る。)

IAM.PNG


■詳細


◆IAMロールの細かい話


  • IAMロールは作成する際に、どのサービスで使うかを選択する必要がある。
     (よく使われるサービスがEC2とLambdaなので、下記のキャプチャのように、上のほうにピックアップされている)
    IAM2.PNG


◆IAMポリシーの細かい話


  • IAMポリシーは、AWSが用意してくれているもの以外に、自作することも出来る(インラインポリシー)
     (その際は、ビジュアルエディタでポチポチサービスを選んで作ることも、JSONを書いて作ることも出来る)


    • これは、AWSが用意しているポリシーでは、細かい設定が仕切れない事や、対象リソースを絞ったポリシーを作る必要がある人の為。

    • さらにロールに設定できるAWSのマネージメントポリシーは最大10個までしか付与できないため(インラインポリシーなら無限?に付与できる)




■最後に

 今回はAWSの最初によく躓く最初にIAM周りにふれてみました。

 IAMグループは、さらにポリシー設定をグルーピング化した物で、IAMユーザはAWSにログインした時orプログラムに権限を渡すときに作るものです。

 ↑説明が雑なので、要望があれば別途書きます。

 以上、フィードバックやご指摘等いただけると大変ありがたいです!!よろしくお願いいたします!!