AWS Identity and Access Management (IAM)

AWS のサービスやリソースへのきめ細かいアクセス許可の適用

AWS Identity and Access Management (IAM) は、AWS 全体できめ細かいアクセス制御を行います。IAM を使用すると、誰がどのサービスやリソースに、どのような条件でアクセスできるかを指定することができます。IAM ポリシーでは、ワークフォースやシステムに対するアクセス許可を管理し、最小権限のアクセス許可を確保します。

IAM は、追加料金なしで提供している AWS のサービスです。 IAM の使用を開始する、またはすでに AWS に登録済みの場合は、IAM コンソールにアクセスします。

ユースケース

IAMでは、ワークフォースのユーザーやワークロードに対する AWS のアクセス許可を管理することができます。ワークフォースユーザーの場合は、AWS Single Sign-On (AWS SSO) を使用して、AWS アカウントへのアクセスとアカウント内のアクセス許可を管理することをお勧めします。AWS SSO は、AWS 組織全体の IAM ロールと IAM ポリシーのプロビジョンと管理を容易にします。ワークロードのアクセス許可については、IAM ロールと IAM ポリシーを使用し、ワークロードに必要なアクセスのみを付与します。

きめ細かなアクセス制御を適用

IAM ポリシーを使用して、特定の AWS のサービス API とリソースへのアクセスを許可します。また、特定の AWS 組織からのアイデンティティへのアクセスや、特定の AWS のサービス経由のアクセスを許可するなど、アクセスを許可する特定の条件を定義することもできます。 

AWS の組織全体のアクセス許可のガードレールとデータの境界線を確立します。

AWS Organizations では、サービスコントロールポリシー (SCP) を使用して、組織のアカウントのすべての IAM ユーザーとロールが遵守するアクセス許可のガードレールを確立することができます。また、データの境界線を設定することで、信頼できるアイデンティティのみが予想されるネットワークから信頼できるリソースにアクセスできるようにすることができます。 SCP を使い始めたばかりでも、既存の SCP をお持ちでも、IAM アクセスアドバイザーを使えば、自信を持ってアクセス許可を制限することができます。

IAM Access Analyzer は最小権限のアクセス許可を実現します。

最小権限 を達成するには、要件の変化に応じて適切なきめ細かいアクセス許可を付与する継続的なサイクルが必要です。 IAM Access Analyzer は、アクセス許可の設定、検証、改良を行う際にアクセス許可管理を効率化するのに役立ちます。

ABAC によるきめ細かいアクセス許可の自動スケーリング

属性ベースのアクセスコントロール (ABAC) は、部署、ジョブロール、チーム名などのユーザー属性に基づくきめ細かなアクセス許可を作成するための認可戦略です。ABAC を使用すると、AWS アカウントできめ細かな制御を行うために必要な個別のアクセス許可の数を減らすことができます。

仕組み

IAM では、きめ細かなアクセス許可を指定することで、誰が何にアクセスできるかを定義します。IAM はリクエストごとにこれらのアクセス許可を適用します。デフォルトではアクセスは拒否され、アクセス許可が「許可」を指定している場合にのみアクセスが許可されます。 

IAM の仕組みを示すイメージ図