AWS Identity and Access Management(AWS IAM)
AWSサービスへのアクセスを管理・制御するためのサービス。
デフォルトではすべて拒否になっている。
必要な場合にのみ、明示的にユーザーにアクセス許可を付与する(最小権限の原則)。
ルートユーザー:すべての操作ができる権限。強力なパスワードと多要素認証(MFA)での保護が推奨
ユーザー:AWSのサービスやリソースを使用する個人。AWSアカウントにアクセスする必要があるユーザーごとに個別のIAMユーザーを作成することを推奨
グループ:ユーザーの集合
ロール:一時的なアクセス許可を取得するために引き受けることができるアイデンティティ
ポリシー:AWSのサービスとリソースへのアクセスを許可または拒否するためのJSONドキュメント
IAMユーザー
ルートユーザー
- AWSアカウント作成時に作られるIDアカウント
- 全てのAWSサービスとリソースを使用できる権限を有する
- 日常的なタスクはルートユーザーを使用しないことが強く推奨される
管理者権限
- 管理者権限の許可が付与されたIAMユーザーのこと
- IAMの操作権限まであり
- ルートアカウントしかできない権限は付与されない
パワーユーザー
- IAM以外の全てのAWSサービスにフルアクセス権限を有するIAMユーザー
- IAMの操作権限なし
IAM権限のベストプラクティス
- 人問のユーザーがー時的な認証情報を使用してAWS にアクセスするには、ID プロバイダーとのフェデレーションの使用が必要です
- AWS にアクセスするには、ワークロードが IAM ロールを使用して一時的な資格情報を使用する必要があります
- 多要素認証(MFA)が必要です
- 長期的な認証情報を必要とするユースケースのためにアクセスキーを定期的にローテーションする
- ルートユーザーの認証情報を保護し、日常的なタスクには使用しない
- 最小特権アクセス許可を適用する
- AWS 管理ポリシーの開始と最小特権のアクセス許可への移行
- IAM Access Analyzer を使用して、アクセスアクティビティに基づいて最小特権ポリシーを生成する
- 未使用のユーザー、ロール、アクセス許可、ポリシー、および認証情報を定期的に確認して削除する
- IAM ポリシーで条件を指定して、アクセスをさらに制限する
- IAM Access Analyzer を使用して、リソースへのパブリックアクセスおよびクロスアカウントアクセスを確認する
- IAM Access Analyzer を使用して IAM ポリシーを検証し、安全で機能的なアクセス許可を確保する
- 複数のアカウントにまたがるアクセス許可のガードレールを確立する
- アクセス権限の境界を使用して、アカウント内のアクセス許可の管理を委任します
アクセス権限の境界設定
IAMユーザーに対して権限境界を設定して、付与可能な権限をあらかじめ制限できる。

AWS Organizations
組織内の複数のAWSアカウントを統合して一元管理できるアカウント管理サービス。
請求、アクセス、コンプライアンス、セキュリティを管理できるだけでなく、アカウント間でリソースを共有できる(リザーブドインスタンスなど)。子アカウントの請求をまとめて親アカウントで管理できる。アカウントをグループ化した組織単位(OU)で管理できる。サービスコントロールポリシー(SCP)でAWSサービス、リソース、個別のAPIアクションの制限を設定できる。

