AWS IAM
AWS リソースへのアクセスを安全に制御するための認証・認可サービスで、ユーザー、グループ、ロール、ポリシーによるきめ細かなアクセス管理を提供する
概要
AWS Identity and Access Management (IAM) は、AWS リソースへのアクセスを安全に管理するためのサービスです。IAM ユーザー、グループ、ロールを作成し、JSON 形式のポリシーでアクセス権限を定義することで、「誰が」「どのリソースに」「どのような操作を」実行できるかをきめ細かく制御できます。IAM はすべての AWS アカウントに標準で組み込まれている機能です。利用料金の扱いは AWS の公式料金ページで確認してください。多要素認証 (MFA) の強制、パスワードポリシーの設定、アクセスキーのローテーションなどのセキュリティ機能を備えています。IAM ロールを使えば、EC2 インスタンスや Lambda 関数に一時的な認証情報を付与でき、長期的なアクセスキーの管理が不要になります。IAM Access Analyzer は外部からアクセス可能なリソースを自動検出し、意図しないアクセス許可を特定します。
ポリシーの評価ロジックと最小権限の実践
IAM のアクセス制御は JSON 形式のポリシードキュメントで定義され、Effect (Allow/Deny)、Action、Resource、Condition の 4 要素で構成されます。複数のポリシーが適用される場合、明示的な Deny が最優先され、次に明示的な Allow が評価され、どちらにも該当しなければ暗黙の Deny となります。この評価ロジックを理解することが、意図しないアクセス許可や拒否を防ぐ鍵です。2026 年 9 月時点の AWS 公式ドキュメントの IAM セキュリティベストプラクティスでは、AWS 管理ポリシーはすべての利用者向けに提供されるため特定のユースケースで最小権限になるとは限らないとされ、カスタマー管理ポリシーを定義して権限をさらに絞り込むことが推奨されています。業務に必要な Action と Resource だけを明示的に許可する形が基本です。Condition 要素を活用すれば、送信元 IP アドレス、MFA 認証の有無、リクエスト時刻などの条件でアクセスをさらに絞り込めます。Azure RBAC はロール定義をスコープ (管理グループ、サブスクリプション、リソースグループ) に割り当てる方式で、上位スコープの権限が下位に継承されますが、IAM にはこのような階層的な継承はなく、各ポリシーで明示的にリソースを指定する設計です。
IAM ロールと一時的な認証情報
IAM ロールは長期的なアクセスキーを使わずに AWS リソースへのアクセスを委任する仕組みで、セキュリティの要です。EC2 インスタンスにインスタンスプロファイル経由でロールをアタッチすれば、アプリケーションは自動的に一時的な認証情報を取得して AWS API を呼び出せます。Lambda 関数の実行ロール、ECS タスクロール、クロスアカウントアクセス用のロールなど、用途に応じたロール設計が求められます。一時的な認証情報は STS (Security Token Service) を通じて発行され、有効期限が設定されます (上限は認証情報の取得方法とロールの設定によって異なります)。長期的なアクセスキーを配布・管理する必要がなくなるため、キーの漏洩リスクを低減できます。
Organizations と IAM Identity Center による大規模管理
組織規模が拡大すると、アカウントごとに IAM ユーザーを個別管理する方式は運用負荷が大きくなります。IAM Identity Center (2026 年 9 月時点の現行名・旧称 AWS SSO) を導入すれば、1 つの ID ソースから複数の AWS アカウントへのアクセスを一元管理でき、ユーザーはシングルサインオンで各アカウントに切り替えられます。Service Control Policy (SCP) を Organizations と組み合わせれば、アカウント単位で許可する操作の上限を設定でき、個々の IAM ポリシーで過剰な権限を付与しても SCP で制限できます。権限の棚卸しには IAM Access Analyzer と CloudTrail のログを組み合わせ、使われていない権限を特定して削除します。2026 年 9 月時点の AWS 公式ドキュメントでは、使用していないユーザー・ロール・権限・ポリシー・認証情報を定期的に見直して削除することが推奨されており、その判断材料として最終アクセス情報 (last accessed information) を利用できるとされています。IAM Access Analyzer は外部からアクセス可能なリソースも自動検出するため、意図しない公開設定の発見にも役立ちます。ルートユーザーについては、2026 年 9 月時点の AWS 公式ドキュメントで、その認証情報を他の重要な個人情報と同じように厳重に保護すること、および IAM ユーザーやルートユーザーを使う場面では MFA を要求することが推奨されています。また、AWS のベストプラクティスでは、ルートユーザーを日常業務に使わないことが推奨されています (2026 年 9 月時点)。
参考資料 (AWS 公式)
本ページの一次情報は AWS 公式サイトおよび公式ドキュメントです。最新の仕様 / 料金は次の公式ページで確認できます。
本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。