AWS Identity and Access Management

AWS Identity and Access Management
URL aws.amazon.com/jp/iam/
タイプ アイデンティティ管理・アクセス制御
運営者 Amazon.com
営利性 営利
登録 必要
開始 2011年5月3日(15年前) (2011-05-03)
テンプレートを表示

AWS Identity and Access Management(エーダブリューエス アイデンティティ アンド アクセス マネジメント、略称: IAM、アイアム)は、Amazon.comがAmazon Web Services(AWS)の一部として提供する、AWSのサービスとリソースへのアクセスを管理するためのWebサービスである。AWSアカウントの中で「誰がサインインできるか」(認証)と「誰が何をしてよいか」(認可)を制御する仕組みで、ユーザー、グループ、ロールといったアイデンティティに対して、JSON形式のポリシー文書で権限を定義する。

2010年9月にプレビュー版として公開され、2011年5月3日に一般提供が始まった。IAM自体の利用に追加料金はかからない。AWSは2021年の時点で、AWSのAPIへの呼び出しはすべてIAMによる権限の確認を経ると説明しており、同年には世界全体で毎秒4億件を超える権限確認を処理していた。

概要

AWSアカウントを作成すると、そのアカウントのすべてのサービスとリソースに対する完全な権限を持つ「ルートユーザー」と呼ばれる1つのサインインIDができる。AWSは、ルートユーザーを日常的な作業に使わず、IAMで管理者や開発者などの別のアイデンティティを作成して、それぞれの作業に必要な範囲のアクセス権を与えることを推奨している。

IAMで設定されたアイデンティティは、パスワードやアクセスキーといった認証情報を使ってAWSにサインインする(認証)。その後、リソースへのアクセスが要求されると、AWSはそのアイデンティティに適用されているポリシーを調べ、許可されている場合にだけ操作を認める(認可)。認可されたアイデンティティは、たとえばAmazon Elastic Compute Cloudのインスタンスを起動したり、Amazon Simple Storage Serviceのバケットを削除したりといった操作を実行できる。

IAMは、1つのAWSアカウントの中に複数のユーザーを作成し、それぞれに固有の認証情報と権限を与えることで、パスワードやアクセスキーを共有する必要をなくし、ユーザーごとのアクセスの有効化や無効化を容易にすることを目的として導入された。

主な構成要素

ユーザーとグループ

IAMユーザーは、AWSアカウント内に作成されるアイデンティティで、人だけでなくアプリケーションを表すこともある。新しく作成されたユーザーは何の権限も持たず、ポリシーによって権限を与えられる。IAMグループはユーザーの集まりで、部門や職務などのまとまりに対してポリシーを一括して適用するために使う。ユーザーは複数のグループに所属でき、ユーザー個別にポリシーを付けるよりもグループ単位で権限を管理することが推奨されている。

ロール

IAMロールは、ユーザーと同じくポリシーで権限を指定するアイデンティティだが、ユーザーとは異なりそれ自体で直接AWSのAPIを呼び出すことはできず、EC2インスタンスなどの実体が引き受けて使う。ロールを引き受けた実体には、有効期限付きの一時的な認証情報が発行される。たとえば、EC2インスタンス上で動くアプリケーションからS3のバケットへアクセスさせたい場合、S3への権限を持つロールを作成してインスタンスに割り当てる。2012年6月に導入されたEC2インスタンス向けのロールにより、それまで必要だった、インスタンスへのアクセスキーの配布と定期的な更新が不要になった。

IAMは、AWS外部のアイデンティティにアクセスを許す仕組みも備える。ロールの導入より前の2011年8月に追加されたIDフェデレーションでは、企業内で既に管理されているユーザーに対して、IAMユーザーを個別に作成することなく、AWS Security Token Service(STS)が発行する有効期限付きの一時的なセキュリティ認証情報を通じてAWSのリソースへのアクセスを許可できる。2022年7月に追加されたIAM Roles Anywhereは、X.509証明書を一時的な認証情報と交換する仕組みによって、オンプレミスのサーバーやコンテナなどAWS外部で動くワークロードにもロールを使えるようにしたものである。Publickeyは、それまで一般的だったアクセスキーをオンプレミス側のソフトウェアに持たせる方式には漏洩時のリスクがあり、必要なときだけ一時的に使えるアクセス権を渡すことでリスクを下げる仕組みだと解説している。

ポリシー

IAMポリシーは、権限を定義するJSON形式の文書である。ポリシーはバージョンと1つ以上のステートメントからなり、各ステートメントでは、許可か拒否かを表すEffect、対象となる操作を列挙するAction、対象となるリソースを示すResource、条件を指定するConditionなどの要素を記述する。ポリシーはユーザー、グループ、ロールといったアイデンティティに付けるほか、S3のバケットなどのリソース側に付けることもできる。2011年の一般提供時からポリシー文書による権限制御が採用されており、操作とリソースの単位で細かく権限を指定し、条件によって適用場面を制御するというこの方式について、AWSは2021年の時点でもIAMの中核をなすと述べている。

ユーザーに必要な最小限の権限だけを与える最小権限の原則はアクセス管理全般の基本的な考え方であり、AWSもIAMの利用において最小特権への移行を掲げている。これを支援する機能として、2019年12月に追加されたIAM Access Analyzerは、ポリシーを分析して外部からアクセスできるリソースを特定し、2021年にはポリシーの検証や、実際のアクセス履歴に基づく最小権限ポリシーの生成に対応した。2023年12月には、一定期間使われていないロール、アクセスキー、パスワード、権限を検出する機能が加わった。

多要素認証

IAMは一般提供時から、ユーザーのアクセスキーやパスワードとあわせて多要素認証(MFA)デバイスを集中管理する機能を備えていた。MFAの要素としては、2022年6月にWebAuthn、2024年6月にパスキーが使えるようになった。Publickeyは、IAMがAWSへのログインと権限を管理するサービスであるため、ここで不正アクセスが起きれば甚大な影響をもたらし得ると指摘している。AWSは2023年10月、2024年半ばからAWS Organizationsの管理アカウントのルートユーザーでマネジメントコンソールにサインインする際にMFAの有効化を必須とし、その後対象を拡大していく方針を発表した。

歴史

関連サービス

AWS IAM Identity Center
従業員などのユーザーを、複数のAWSアカウントやアプリケーションへ一元的にサインインさせるためのシングルサインオンサービス。既存のIDプロバイダーと接続してユーザーとグループを同期するか、IAM Identity Center内で直接ユーザーを管理する。2017年にAWS Single Sign-Onとして提供が始まり、2022年7月26日に現在の名称になった。IAMのロールと一時的な認証情報の仕組みの上に構築されている。
AWS Organizations
複数のAWSアカウントをまとめて管理するサービス。IAMが1つのアカウント内のユーザーに対する権限を管理するのに対し、Organizationsはアカウントの単位で権限の上限などを一元的に管理する。
AWS Security Token Service(STS)
有効期限付きの一時的なセキュリティ認証情報を発行するサービス。IAMやIAM Identity Centerと同様に追加料金なしで提供され、一時的な認証情報を使って他のAWSサービスにアクセスした分だけが課金される。

関連項目

脚注

  1. 1 2 3 4 5 “IAM とは”. AWS Identity and Access Management ユーザーガイド. Amazon Web Services. 2026年9月6日閲覧。
  2. 1 2 3 4 5 王文礼 (2022年12月2日). “【初心者向け】AWS IAM (Identity and Access Management ) 入門”. クラウドテクノロジーブログ. ソフトバンク. 2026年9月6日閲覧。
  3. 1 2 3 4 “【初心者向け】AWS IAMとは? ポリシーやロールについてわかりやすく解説!”. TOKAIコミュニケーションズ (2025年2月5日). 2026年9月6日閲覧。
  4. 1 2 3 “Announcing AWS Identity and Access Management (IAM) - Preview Beta” (英語). Amazon Web Services (2010年9月2日). 2026年7月30日時点のオリジナルよりアーカイブ。2026年9月6日閲覧。
  5. 1 2 3 4 5 6 Jeff Barr (2011年5月3日). “IAM: AWS Identity and Access Management – Now Generally Available” (英語). AWS News Blog. Amazon Web Services. 2026年9月6日閲覧。
  6. 1 2 3 4 5 6 7 8 9 10 11 12 Jeff Barr (2021年5月3日). “Happy 10th Birthday – AWS Identity and Access Management” (英語). AWS News Blog. Amazon Web Services. 2026年9月6日閲覧。
  7. 1 2 3 Anders Samuelsson (2012年6月11日). “IAM roles for EC2 instances – Simplified Secure Access to AWS service APIs from EC2” (英語). AWS News Blog. Amazon Web Services. 2026年9月6日閲覧。
  8. 1 2 3 4 “Extend AWS IAM roles to workloads outside of AWS with IAM Roles Anywhere” (英語). AWS Security Blog. Amazon Web Services (2022年7月6日). 2026年9月6日閲覧。
  9. 1 2 Jeff Barr (2011年8月4日). “AWS Identity and Access Management – Now With Identity Federation” (英語). AWS News Blog. Amazon Web Services. 2026年9月6日閲覧。
  10. 1 2 Jeffrey Schwartz (2011年8月4日). “Amazon Extends Connectivity of Cloud Service” (英語). The Schwartz Cloud Report. Redmondmag.com. 2023年10月3日時点のオリジナルよりアーカイブ。2026年9月6日閲覧。
  11. 1 2 新野淳一 (2022年7月8日). “AWSが「IAM Roles Anywhere」発表。一時的にAWSへのアクセス権をAWSの外側にあるワークロードに付与”. Publickey. 2026年9月6日閲覧。
  12. ↑ “AWS Identity and Access Management (IAM)”. Amazon Web Services. 2026年9月6日閲覧。
  13. ↑ Matt Campbell (2023年12月18日). “AWS Adds Automated Detection of Unused IAM Roles, Users, and Permissions” (英語). InfoQ. 2026年9月6日閲覧。
  14. 1 2 新野淳一 (2022年6月8日). “AWS IAMがWebAuthnに対応。多要素認証の要素として利用可能に(記事訂正)”. Publickey. 2026年9月6日閲覧。
  15. 1 2 新野淳一 (2024年6月12日). “パスキーがAWS IAMの多要素認証として利用可能に”. Publickey. 2026年9月6日閲覧。
  16. 1 2 “Secure by Design: AWS to enhance MFA requirements in 2024” (英語). AWS Security Blog. Amazon Web Services (2023年10月3日). 2026年9月6日閲覧。
  17. 1 2 “What is IAM Identity Center?” (英語). AWS IAM Identity Center User Guide. Amazon Web Services. 2026年9月6日閲覧。

外部リンク