説明
ユーザーがいない IAM グループ自体は、ユーザーに権限を与えません。ただし、未使用のグループやポリシーが残るとアクセス管理が複雑になり、後で誤ってユーザーを追加した際に不要な権限を与えるおそれがあります。
想定される影響
未使用の権限設定が監査や運用を難しくする場合があります。古いポリシーを確認せずにグループを再利用すると、新しいメンバーに過剰な権限が付くおそれがあります。
対処方法
グループの管理者、目的、関連するポリシーを確認してください。必要なグループには承認済みのユーザーだけを追加し、不要なグループはポリシーと依存関係を確認してから削除してください。空のグループを埋めるためだけにユーザーを追加しないでください。
例
キュー myqueue と条件 IsSampleIamUser の宣言は省略しています。キューに対する実際の権限も別途確認してください。
変更前
yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: A sample template 2
Resources:
myuseeer:
Type: AWS::IAM::Group
Properties:
Path: "/"
Policies:
- PolicyName: giveaccesstoqueueonly
PolicyDocument:
Version: "2012-10-17"
Statement:
- Effect: Allow
Action:
- sqs:*
Resource:
- !GetAtt myqueue.Arn
- Effect: Deny
Action:
- sqs:*
NotResource:
- !GetAtt myqueue.Arn
IamUserAdminSample22:
Type: AWS::IAM::User
Condition: IsSampleIamUser
Properties:
UserName: sample-iam-user-admin
ユーザーにグループの関連付けがないため、この例のグループは空です。
変更後
yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: A sample template
Resources:
myuseeer:
Type: AWS::IAM::Group
Properties:
Path: "/"
Policies:
- PolicyName: giveaccesstoqueueonly
PolicyDocument:
Version: "2012-10-17"
Statement:
- Effect: Allow
Action:
- sqs:*
Resource:
- !GetAtt myqueue.Arn
- Effect: Deny
Action:
- sqs:*
NotResource:
- !GetAtt myqueue.Arn
IamUserAdminSample22:
Type: AWS::IAM::User
Condition: IsSampleIamUser
Properties:
UserName: sample-iam-user-admin
Groups:
- !Ref "myuseeer"
条件が真であれば、ユーザーを対象グループに関連付けます。事前に、そのユーザーがグループの権限を必要としているか確認してください。