🔥

【AWS】IAMポリシー、グループ、ロールの違い

2025/01/17に公開

1. IAMポリシーとは

  • 概要:
  • 主な構成要素:
    • Effect: 許可するか拒否するか(AllowまたはDeny)。
    • Action: 実行可能な操作(例: s3:ListBucket)。
    • Resource: 操作対象のリソース(例: 特定のS3バケット)。
  • 活用方法:
    • AWSが提供する事前定義済みポリシー(例: AdministratorAccess、ReadOnlyAccess)を使用。
    • 独自のポリシーを作成する場合はIAMポリシージェネレーターを活用。

2. IAMグループとは

  • 概要:
    • 複数のIAMユーザーをまとめるためのリソース。
    • IAMグループにポリシーを割り当てると、所属する全ユーザーがその権限を共有。
  • メリット:
    • 管理の効率化(個別のユーザーにポリシーを割り当てる手間を削減)。
  • :
    • 「開発者グループ」には開発関連の操作権限、「インフラ管理グループ」には管理者権限を付与。

3. IAMロールとは

  • 概要:
    • AWSリソースに一時的な権限を与える「ヘルメット」のようなもの。
    • 例: EC2インスタンスがS3バケットの一覧を取得する権限を付与。
  • 特徴:
    • ユーザーやサービスに対して動的に権限を付与。
    • 権限はIAMポリシーで定義。
  • 現実世界の例:
    • 訪問先で受け取る「臨時入館カード」:カードを返却すると権限が無効になる。
  • 使用例:
    • EC2インスタンスにIAMロールを割り当て、指定された操作(例: S3バケットの参照)のみ許可。

4. IAM管理の基本フロー

  1. IAMポリシーを作成
    • リソースへのアクセス許可をJSON形式で定義。
  2. IAMユーザーまたはIAMグループにポリシーを割り当て
    • 個別に割り当てる場合はIAMユーザーに付与。
    • グループ管理で効率化する場合はIAMグループに付与。
  3. IAMロールをAWSリソースに割り当て
    • 必要な権限を一時的にAWSリソースに付与。

5. 活用例

  1. IAMグループの利用例:

    • 開発チーム:S3フルアクセス。
    • QAチーム:S3リードオンリーアクセス。
    • 管理者:AdministratorAccess。
  2. IAMロールの利用例:

    • EC2インスタンスがS3バケットを操作する権限を付与。
    • 操作終了後、権限を自動的に削除。

Discussion