전체 권한을 허용하는 IAM 정책

IAM 정책의 작업과 리소스를 필요한 범위로 제한하세요.

설명

IAM 정책에서 Allow와 함께 Action: "*", Resource: "*"를 사용하면 모든 작업과 리소스에 대한 광범위한 권한을 부여합니다. 실제 권한에는 조건과 다른 제한 정책도 적용됩니다.

잠재적 영향

정책이 연결된 계정이나 워크로드가 침해되면 데이터와 서비스 설정에 광범위한 영향을 줄 수 있습니다.

해결 방법

필요한 작업과 리소스 ARN을 지정하세요. 리소스 수준 권한을 지원하지 않는 작업은 별도로 분리해 필요한 조건을 적용하세요.

예시

예시는 특정 S3 버킷의 객체 작업으로 범위를 줄입니다. 버킷 이름과 정책이 연결될 그룹을 실제 값으로 바꾸고, 객체 ACL 변경 권한도 필요한 경우에만 유지하세요.

변경 전

yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: A sample template
Resources:
  mypolicy:
    Type: AWS::IAM::Policy
    Properties:
      PolicyName: mygrouppolicy
      PolicyDocument:
        Version: "2012-10-17"
        Statement:
          - Effect: Allow
            Action: ["*"]
            Resource: "*"
      Groups:
        - myexistinggroup1
        - !Ref mygroup

변경 후

yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: A sample template
Resources:
  MyPolicy:
    Type: AWS::IAM::Policy
    Properties:
      PolicyName: mygrouppolicy
      PolicyDocument:
        Version: "2012-10-17"
        Statement:
          - Effect: Allow
            Action:
              - s3:GetObject
              - s3:PutObject
              - s3:PutObjectAcl
            Resource: arn:aws:s3:::myAWSBucket/*
      Groups:
        - myexistinggroup1
        - !Ref mygroup

참조