見出し画像

【PART4 IAMポリシー 序】ぜんぜんわからなかったIAMについてまとめてみました

こんにちはこぐまです。
ぜんぜんわからなかったIAMシリーズ4回目です。
前回は「IAMグループ」についてお話ししました。
「IAMグループ」は「IAMユーザー」の権限をまとめたものであるということと、「ポリシーの評価論理」についてお話ししました。

IAMポリシーって難しい。


今回からしばらくは「IAMポリシー」についてお話していきます。
私は最初、「IAM関連の中で一番難しいのはIAMロールかなあ・・」と感じていたのですが、(事実「IAMロールってよくわからない」・・という方は多い気がします)、今回IAM関連の記事を書くにあたっていろいろ振り返ってみると、実は自分が本当にわかっていなかったのは「IAMポリシー」のほうだったなと実感しました。

「IAMポリシー」がわかってくると、「IAMロール」についてもよくわかってくるようになりました。
もちろん今でも100%わかっているわけではないと思いますが、理解できた範囲でまとめていきたいと思います!

「IAMポリシー」とは


IAMポリシーとは、実はただの「文書・手紙」です。
その手紙はJSONという形式で書かれていて(※1)、「何を、○○できる。」「何を、○○できない」などの「お約束(権限)」が書かれています。
例えば

「EC2,RDSの一覧は見れるが、起動停止はできない」
「全サービスの参照更新ができる」

みたいに、単純に「○○できる、○○できない」というお約束もあれば、

「送信元IPアドレスが111.222.333.444のときのみ、○○できる。」
「この手紙を受け取るのは○○で、その人だけが○○できる」

など、特定の条件まで付与したお約束もあります。
いずれにせよIAMポリシーはただの手紙であり、手紙の中身には、お約束が書かれているということを理解していただければと思います。

ポリシーはJSONで書かれた「ただの手紙」である。

(※1)お約束は基本JSONなのですが、唯一JSON形式でないポリシーがあります。それはACLというもので、現在ではあまり重要視されていないようです。次回、使用用途によるポリシーの呼び方の部分で軽く触れようと思います。

「プリンシパル」とは?

IAMポリシーというのは「ただの手紙」です。
この手紙を受け取る相手のことを「プリンシパル」と言います。
この言葉も結構大事(私は最初とっつきにくかった・・)なので覚えておいてください。
前回「IAMポリシー」は、「IAMユーザー」や「IAMグループ」にアタッチして利用するということを例を挙げて説明しましたが、この場合はまさしく「プリンシパル(手紙を受け取る相手)」=「IAMユーザー」「IAMグループ」となります。
「プリンシパル」は、手紙の中に書かれた「お約束」に従って行動できます。(※2)

「IAMポリシー」は、「IAMユーザー」や「IAMグループ」にアタッチして利用する・・
というのはこういうこと。手紙を受け取る相手が「プリンシパル」であり、
手紙を相手に送る(付与する)ことを「アタッチ(黒矢印)」と呼んでいます。

(※2)先ほどの「この手紙を受け取るのは○○で、その人だけが○○できる」の条件まで付与した手紙の例のように、手紙の中に直接、「この手紙を受け取る相手」を書くこともあります。次回以降説明する「リソースベースのポリシー」ではこの要素は必須です。

超重要!!「IAMポリシー」の呼び方


IAMポリシーは、その用途によってたくさんの呼び方があります。
ここではそれを整理していきます。

ポリシーは、ただの手紙です。
そして、いろんな呼び方があります。これらを理解していくのに、大きく分けると3種類の呼び方として考えていくとわかりやすいかなと(私は)思っています。その3種類とは以下になります。

1.手紙の使用用途での呼び方
2.手紙の作り方での呼び方
3.手紙を渡す(アタッチする)ときの呼び方

そして、上記①~③を並べて表現することが多いです。
例えば、以下のような感じです。

(例1)
IAMユーザー「koguma」に「①アイデンティティベースのポリシー」として「②インラインポリシー」「③権限ポリシー」としてアタッチする。

(例2)
IAMロール「testrole」に「①リソースベースのポリシー」として、「②AWS管理ポリシー」「③信頼ポリシー」としてアタッチする。

実はこの文章には1か所間違いがあります!どこかわかりますでしょうか?
最後のFINのところで記載します。

○○ポリシー、〇〇ポリシー、○○ポリシー・・・・
・・・・
・・・・
・・・・
わけわからなくなりますよね(笑)
本当にここがもう少しシンプルになればいいなあとは思っているのですが・・。ただ、わかってくるとそこまで複雑でもないのと、クイズを解くように楽しくなってくるので、その辺を整理できればと思っています。

とにかく!

何度も繰り返しますが、IAMポリシーは「ただの手紙」であり、
その手紙の使い方や状況に応じていろんな呼び方があるけれども、常に「3種類」をセットにして表現するということです。
その3種類とは、
1.手紙の使用用途での呼び方
2.手紙の作り方での呼び方
3.手紙を渡す(アタッチする)ときの呼び方

です。

まずいったんここで切ります!
次回は①~③を細かくお話していこうと思います。

ここまで読んで下さってありがとうございました!

この記事が参加している募集

最近の学び

この記事が気に入ったらサポートをしてみませんか?