AWS의 IAM(Identity and Access Management)은 한마디로 "누가(Who), 무엇을(What), 어디까지(Which resources) 할 수 있는지"를 관리하는 보안 서비스. AWS 리소스에 대한 접근 권한을 안전하게 제어하는 핵심 서비스라고 생각(AWS Docs)
🏢 쉽게 비유하면
AWS를 회사 건물이라고 생각해 보자.
- 👤 IAM User(사용자) = 직원
- 👥 IAM Group(그룹) = 개발팀, 운영팀
- 🎭 IAM Role(역할) = 특정 업무를 수행할 때만 부여되는 권한
- 📜 IAM Policy(정책) = 출입 가능한 층과 사용할 수 있는 시설을 적어놓은 규칙
예를 들어 개발자에게 필요한 권한만 부여 가능
EC2 서버 생성 ✅
S3 버킷 읽기 ✅
RDS 삭제 ❌
모든 사람에게 관리자 권한을 주면 실수나 보안 사고가 발생할 수 있다.
IAM을 사용하면 각 사용자에게 필요한 권한만 부여(최소 권한 원칙, Least Privilege)할 수 있다.
🎞️ IAM의 주요 구성 요소
구성 요소설명
| IAM User | AWS를 사용하는 사람이나 프로그램 |
| IAM Group | 여러 사용자에게 동일한 권한을 부여하기 위한 그룹 |
| IAM Role | 임시로 권한을 부여하는 역할(EC2, Lambda 등이 자주 사용) |
| IAM Policy | JSON 형식으로 작성하는 권한 규칙 |
예를 들어 이런 정책은 S3 버킷을 읽을 수 있는 권한을 의미합니다.
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "*"
}
⚠️ AWS에서 매우 중요한 점
- AWS 계정을 만들면 Root User(루트 사용자)가 생성
- 루트 사용자는 모든 권한을 가지고 있기 때문에 일상적인 작업에는 사용하지 않는 것이 AWS의 권장 사항
대신:
- Root 계정으로 로그인
- IAM 관리자(User 또는 Identity Center)를 생성
- 평소에는 해당 계정으로 작업
📌 IAM은 AWS에서 "누가 어떤 리소스에 어떤 권한으로 접근할 수 있는지"를 관리하는 보안 및 권한 관리 서비스
'FullStack Survival > AWS' 카테고리의 다른 글
| [AWS] EC2 인스턴스에 Docker 설치 (0) | 2026.07.20 |
|---|---|
| [AWS] SSH를 통한 EC2 인스턴스(서버) 접속 (0) | 2026.07.20 |
| [AWS] EC2 인스턴스 생성 (0) | 2026.07.20 |
| [AWS] EC2란? (0) | 2026.07.20 |
| [AWS] IAM 생성 및 권한 부여 (0) | 2026.07.20 |