管理 IAM ポリシーをユーザーに直接関連付け

ユーザーに直接関連付けた管理ポリシーを確認し、共通権限を一貫して管理します。

説明

管理 IAM ポリシーをユーザーに直接関連付けると、ユーザーごとの関連付けを追跡する必要があります。共通権限をグループにまとめると、メンバー変更やアクセス権限の確認を簡素化できます。直接の関連付け自体が権限を広げるわけではありません。

想定される影響

ユーザーごとの例外が増えると、業務変更後も不要な権限が残ったり、アクセス権限の取り消しが漏れたりするおそれがあります。

対処方法

共通権限は管理ポリシーをグループに関連付け、承認済みのユーザーを追加して管理してください。直接の関連付けを削除する前に必要なアクセスを確認し、個別の例外には目的と見直し時期を記録してください。

例

TestUser と TestGroup は既存のユーザーとグループの名前です。バケットとオブジェクトの範囲を実際の要件に合わせ、ユーザーをグループに関連付けてください。

変更前

yaml
Resources:
  CreateTestDBPolicy:
    Type: "AWS::IAM::ManagedPolicy"
    Properties:
      Description: Read approved S3 objects
      Path: /
      PolicyDocument:
        Version: "2012-10-17"
        Statement:
          - Effect: Allow
            Action: s3:GetObject
            Resource: arn:aws:s3:::example-bucket/*
      Users:
        - TestUser

管理ポリシーをユーザーに直接関連付けています。

変更後

yaml
Resources:
  CreateTestDBPolicy:
    Type: "AWS::IAM::ManagedPolicy"
    Properties:
      Description: Read approved S3 objects
      Path: /
      PolicyDocument:
        Version: "2012-10-17"
        Statement:
          - Effect: Allow
            Action: s3:GetObject
            Resource: arn:aws:s3:::example-bucket/*
      Groups:
        - TestGroup

同じポリシーをグループに関連付けています。グループのメンバーは別途管理する必要があります。

参考資料