설명
iam:PutGroupPolicy 권한을 가진 역할을 사용하면 대상 그룹의 인라인 정책을 추가하거나 덮어써 구성원인 IAM 사용자의 권한을 확대할 수 있습니다. 여러 사용자에게 불필요한 권한을 부여할 수 있는 관리 권한입니다.
IAM 역할은 그룹 구성원이 될 수 없으므로 이 작업이 호출 역할 자체의 권한을 직접 높이지는 않습니다. 대상 사용자의 권한 경계, 조직 정책과 명시적 거부도 실제 접근을 제한합니다.
잠재적 영향
- 자동화 역할의 잘못된 변경이 여러 사용자에게 과도한 권한을 줄 수 있습니다.
- 승인 없는 그룹 정책 변경으로 계정 내 접근 통제가 약화될 수 있습니다.
해결 방법
역할에 필요하지 않은 iam:PutGroupPolicy를 제거하세요. 필요한 수정 권한은 승인된 관리 역할에 부여하고 Resource를 대상 그룹 ARN으로 제한하세요. 정책 내용과 변경 이력을 검토하며 정상 관리 작업과 미승인 변경 차단을 시험하세요.
예시
같은 역할과 인라인 정책의 발췌입니다. 실제 구성에는 생략된 역할 신뢰 정책을 별도로 정의하세요.
변경 전
hcl
resource "aws_iam_role" "example" {
name = "cosmic"
}
resource "aws_iam_role_policy" "example" {
name = "test_inline_policy"
role = aws_iam_role.example.name
policy = jsonencode({
Version = "2012-10-17"
Statement = [
{
Action = [
"iam:PutGroupPolicy",
]
Effect = "Allow"
Resource = "*"
},
]
})
}
이 역할을 사용하는 주체가 전체 그룹의 인라인 정책을 추가하거나 갱신할 수 있습니다.
변경 후
hcl
resource "aws_iam_role" "example" {
name = "cosmic"
}
resource "aws_iam_role_policy" "example" {
name = "test_inline_policy"
role = aws_iam_role.example.name
policy = jsonencode({
Version = "2012-10-17"
Statement = [
{
Action = [
"ec2:Describe*",
]
Effect = "Allow"
Resource = "*"
},
]
})
}
이 허용문을 EC2 조회 작업으로 줄입니다. 다른 그룹 관리 권한과 불필요한 조회 권한도 검토하세요.