IAMとは
AWS Identity and Access Managementの略称。
AWSを安全に操作するための認証・認可の仕組み
認証
通信の相手が誰であるかを確認すること
認可
とある特定の条件に対して、リソースアクセスの権限を与えること
主要機能
IAMユーザー
AWS アカウント内に追加される利用ユーザーのこと
AWS上の利用者はIAMユーザーという権限を付与されたエンティティとして設定される。
ルートユーザーとIAMユーザーの違い
ルートユーザーはAWSアカウント作成すると作られるアカウント内の全てのサービス、リソースへのフルアクセスが許可されているため使用することが非推奨となっているためIAMユーザーに管理者権限を付与することによって管理した方が良い。
IAMユーザーグループ
複数のIAMユーザーをまとめてグループとしてまとめることができる仕組み
IAMロール
AWSリソースが別のリソースに対するアクセス権限を付与する仕組み
例) EC2 ➡︎ S3にアクセスしてデータを取ってくるといったアクセス権限
別のAWSアカウントのIAMユーザーにアクセス権限を委譲する際にも利用
IAMポリシー
IAMユーザーやIAMロールにアタッチすることができ、アクセス権限を付与するためのJSON形式のドキュメントで大きく分けて3種類存在する。
- AWS管理ポリシー
- AWSが作成、管理しているポリシーで、ユーザーやロールに適用することができる。
- カスタマー管理ポリシー
- ユーザーアカウントがJSONファイルを使用して設定するポリシー。
- インラインポリシー
- 特定のユーザーやロール専用に作成するポリシーで1つに対して1つ(1対1)のアタッチしかできない。
Organizations
複数のAWSアカウントを利用している場合に、統合管理(一元管理)することができるサービス。
IAMは1つのアカウント内でユーザーを管理するサービスだがOrganizationsはアカウントを複数統合管理することができる。
特徴
- 組織を定義し管理する
- 新規アカウントを作成する際に、それらを組織単位(OU)、単一のアプリケーションもしくはサービスを提供するアカウントをグループ化することができる。
- アカウント間でリソースを共有する
- AWS Organizationsの組織内で、AWS Resource Access Manager(AWS RAM)を用いるとAWSアカウント間やOU間でリソースの共有を行えるようになる。
- 請求とコストの一元管理
- AWSの請求は各アカウントごとだが、Organizations では 1 つにまとめた組織の一括請求が可能です。
おわりに
学習段階ではIAMのことを理解せずにルートユーザを使用していましたがIAMユーザーを作成して使用した方がいいのだとこの備忘録を作成して学びました。
まだまだ初学者ですがこれからも精進していきたいと思っていますので間違った記載などありましたらご指摘お願い致します。