Help us understand the problem. What is going on with this article?

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

More than 1 year has passed since last update.

■概要

◆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プログラムに権限を渡すときに作るものです。
 ↑説明が雑なので、要望があれば別途書きます。
 以上、フィードバックやご指摘等いただけると大変ありがたいです!!よろしくお願いいたします!!

montama
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away