【AWS】IAMをざっくり理解したい方必見!

  • このエントリーをはてなブックマークに追加

「IAMって何??」、「そもそもIAMは必ず設定しないといけないの??」
と思っているあなたは、必見です!

AWSを使うにあたってIAMは避けて通れません!
が、しかし。最初から全部理解しようとすると間違いなく挫折します。従って、まずはIAMの概要をざっくり理解しましょう。
ざっくりでも理解していると、その後の作業の進み具合が段違いです。

それでは解説していきます。

IAMでできること

IAMでは、AWSマネジメントコンソール、AWS API、AWS CLI(コマンドライン)へのアクセス制御が行えます。
そして主に以下の3つの機能を実現することができます。

  1. ユーザー、グループを作ることにより、AWSサービス(EC2インスタンスやS3など)へのアクセスを制御する。
  2. ロールを作成して、AWSサービスが実行できる操作を制御する。
  3. ユーザーやグループに権限を付与して、実行できる操作を制御する。

ユーザー、グループ、ロールとは何か?

1番基本で1番大事な、ユーザー、グループ、ロールについて解説していきます。

ユーザーとは?

AWSサービスへのアクセスを必要とする個人のこと。認証方法としてパスワード、アクセスキー、MFA(マルチファクタ認証)が使用できます。
パスワード認証はAWSマネジメントコンソールへのアクセスのみに使います。
アクセスキーは、プログラムからAWSサービスを呼び出す時に使います。アクセスキーIDとシークレットキーで構成されます。

グループとは?

複数のユーザーをまとめて扱うことができるため、権限の一括管理が可能になります。まぁ言葉通りの役割ですね。

ロールとは?

各種操作の実行を「行えるか」、「行えないか」ということを決めるポリシーのこと。
ロールの対象は、個人、AWSサービス(EC2インスタンスなど)、アプリケーション。

IAMでのポリシーとは何か

ポリシーとは、アクセス制御を定めたもの。大きく分けて2種類存在します。

  • アイデンティティ(ID)ベースのポリシー

  • リソースベースのポリシー

それでは、それぞれ解説します。

アイデンティティベースのポリシー

アクセス制御とアクセス権をJSONテキストで扱える。また、アイデンティティベースポリシーは、さらにインラインポリシーと管理ポリシーの2つに分けることができる。

インラインポリシー

単一のユーザー、グループ、ロールに直接定義したポリシー。
インラインポリシーは、以下のような場面で役にたちます。

  • プリンシパルとポリシーが1対1のとき。

  • プリンシパルに余計な権限を付与したくないとき。

管理ポリシー

ユーザー、グループ、ロールとは別で管理できるポリシー。AWS管理ポリシーとカスタマーポリシーが存在する。

AWS管理ポリシーとは、AWSが作成したポリシーのこと。既に作成されているため、基本的にこちらを使うことで、より管理が楽になります。

カスタマーポリシーとは、自分で作成するポリシーのこと。AWS管理ポリシーよりも細かいポリシーを使いたい場合は、こちらを使います。

管理ポリシーは、以下のような場面で役に立ちます。

  • プリンシパルとポリシーがN対1のとき。(1つのポリシーを複数のプリンシパルで使いたいとき)

  • ユーザーとポリシーの管理を別にして、ポリシーを一括管理したいとき。

リソースベースのポリシーとは?

先程は、IDベースでしたが、リソースベースポリシーでは、AWSサービス(EC2インスタンスなど)に直接定義(インラインポリシー)していきます。また、リソースベースポリシーを使用する場合は、アクセスできるユーザーを別で指定する必要があります。

まとめ

いかがでしたでしょうか。IAMの基本について解説していきました。
是非参考にしてみて下さい!!

  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメントを残す

*