설명
IAM 정책을 사용자에게 직접 연결하면 권한이 사용자별로 분산되어, 같은 업무를 맡은 사용자들의 권한을 일관되게 관리하기 어려워질 수 있습니다. 직접 연결은 지원되는 방식이지만, 예외가 쌓이면 불필요한 권한을 놓치기 쉽습니다.
공통 권한은 그룹으로 관리하고, 가능한 경우 역할과 임시 자격 증명을 사용하세요. 그룹이나 역할로 옮기는 것만으로 정책의 권한 범위가 줄어드는 것은 아닙니다.
잠재적 영향
- 사용자별 예외가 누적되면 최소 권한 유지와 감사가 어려워집니다.
- 인사 이동이나 계정 정리 후에도 불필요한 직접 권한이 남을 수 있습니다.
해결 방법
- 직접 연결된 정책의 목적과 실제 권한을 확인하고 공통 권한을 그룹이나 역할로 이전하세요.
- 필요한 작업을 시험한 뒤 기존 사용자 정책을 제거하세요. 새 정책을 추가하는 것만으로 기존 권한은 사라지지 않습니다.
- 이전한 정책도 필요한 작업과 리소스로 제한하고, 정기적으로 멤버십과 권한을 검토하세요.
예시
admin_policy.json의 내용과 사용자·그룹 정의는 생략했습니다. 파일의 실제 권한을 검토하고 필요한 그룹 멤버십을 별도로 구성하세요.
변경 전
yaml
- name: 사용자에 정책 연결
community.aws.iam_policy:
iam_type: user
iam_name: administrators
policy_name: Admin
state: present
policy_document: admin_policy.json
정책을 administrators라는 사용자에게 직접 연결합니다.
변경 후
yaml
- name: 그룹에 정책 연결
community.aws.iam_policy:
iam_type: group
iam_name: administrators
policy_name: Admin
state: present
policy_document: admin_policy.json
같은 이름의 그룹에 정책을 연결합니다. 기존 사용자 정책을 자동으로 제거하지 않으므로 이전 절차에서 별도로 정리하세요.