1. Identity & Access Management
- IAM
- 클라우드 서비스 및 리소스에 액세스할 수 있는 주체와 작업수행 권한 관리
- 주요 구성 요소
- 사용자(User)
- AWS 계정 내에서 특정 사람이나 애플리케이션을 나타냄
- 정책을 설정하여 권한 부여
- 그룹(Group)
- 동일한 업무를 수행하는 다수의 사용자들에 대한 권한을 용이하게 관리 가능
- 역할(Role)
- 사용자 대신 특정 작업을 수행하기 위해 AWS 리소스에 임시적으로 권한을 부여할 수 있는 개념
- ex)
철수에게 A 권한이 존재, 임시적으로 B권한 부여
B 권한이 부여된 동안 A 권한 사용 불가
특정 시간이 지나면 B 권한이 회수되고 A 권한 부여
- 정책(Policy)
- JSON 형식으로 작성되며, 권한을 세부적으로 정의
- 자격 증명 기반 정책 : 사용자, 그룹 또는 역할에 적용, 특정 주체가 리소스에 접근하여 수행할 수 있는 권한 부여
ex) '사용자 A는 S3 버킷에 접근할 수 있다'라고 사용자 쪽에서 선언
- 리소스 기반 정책 : 리소스에 정책을 적용, 액세스할 수 있는 주체 및 리소스에서 수행할 수 있는 작업을 지정
ex) '이 S3 버킷은 사용자 A가 접근할 수 있다'라고 리소스 쪽에서 선언
- AWS 계정을 생성할 경우 루트 사용자로 시작하며 루트 사용자는 모든 AWS 서비스 및 리소스에 대한 전체 액세스 권한을 가짐
- 따라서 IAM 사용자를 생성 후 최소한의 권한(Least Privilege)을 할당하여 사용하는 것이 바람직
- IAM 권한 경계
- 권한 부여가 목적이 아닌 사용자 권한을 제한하는 목적으로 활용
- 조직 내 보안 정책을 벗어난 잘못된 정책 적용 시 필터링 역할
