레슨 5 12분

클라우드 보안의 기본

IAM, 최소 권한 원칙, 암호화, 제로 트러스트 — 클라우드 보안의 핵심 원칙을 배우고 가장 흔한 보안 실수를 피하는 법.

🔄 Quick Recall: 지난 레슨에서 무료 티어로 첫 VM을 띄우고 정적 사이트를 호스팅했어요. AI를 클라우드 튜터로 쓰는 법도 배웠고요. 이제 클라우드에서 가장 중요한 주제 — 보안을 배워요.

클라우드 보안은 모든 사람의 일

클라우드 보안 사고의 대부분은 제공자의 실패가 아니라 사용자의 설정 실수에서 와요. 공개 S3 버킷에서 고객 데이터가 유출되고, 과도한 IAM 권한이 공격 통로가 되고, 코드에 하드코딩된 자격증명이 GitHub에 올라가요.

2024년 기준 클라우드 보안 사고의 **75%**가 권한 과잉(over-provisioning)과 관련돼요. 기술이 아니라 설정과 관행의 문제. 그래서 개발자든 관리자든 보안의 기본을 알아야 해요.

IAM: 클라우드 보안의 기반

IAM(Identity and Access Management)은 “누가 무엇에 접근 가능한가"를 관리하는 시스템이에요.

최소 권한 원칙

필요한 것만, 필요한 기간만.

❌ 안 좋은 예✅ 좋은 예
모든 개발자에게 관리자 권한개발자별 필요한 서비스만 허용
영구 액세스 키임시 자격증명 (STS)
하나의 공유 계정개인별 IAM 사용자 + MFA
우리 팀의 AWS IAM 정책을 리뷰해줘.
현재 상태: [현재 권한 설명]
팀 역할: [개발자 N명, 관리자 N명]

최소 권한 원칙에 따라:
1. 각 역할에 필요한 최소 권한
2. 과도한 권한을 식별해줘
3. 임시 자격증명으로 전환하는 방법

Quick Check: IAM에서 최소 권한 원칙이란? 사용자에게 업무 수행에 필요한 최소한의 접근 권한만 부여하는 것이에요. 추가가 필요하면 그때 요청. 빼는 것보다 더하는 게 항상 쉬워요.

암호화: 모든 레이어에서 데이터 보호

데이터는 세 가지 상태에서 보호돼야 해요:

상태설명방법
저장 중 (at rest)디스크에 저장된 데이터AES-256, 서버 측 암호화
전송 중 (in transit)네트워크를 이동하는 데이터TLS/SSL, HTTPS
사용 중 (in use)메모리에서 처리되는 데이터기밀 컴퓨팅 (아직 초기 단계)

키 관리도 핵심: 누가 복호화 키에 접근하느냐가 데이터 보안의 실질적 결정자예요.

  • 제공자 관리 키: 가장 편리, 하지만 제공자도 접근 가능
  • 고객 관리 키 (CMK): 내가 키를 관리, 더 안전하지만 복잡
  • 키 로테이션: 정기적으로 키를 교체해 유출 위험 감소

제로 트러스트: 아무것도 신뢰하지 않고 모두 검증

전통적 보안은 “성벽 안은 안전"이었어요. 제로 트러스트는 “성벽 안이든 밖이든 모든 접근을 검증"이에요.

핵심 원칙:

  1. 모든 접근을 검증 — 네트워크 위치가 아닌 ID 기반
  2. 최소 권한 접근 — 필요한 것만, 필요한 시간만
  3. 침해를 가정 — 이미 뚫렸다고 가정하고 피해를 최소화하는 설계

Quick Check: 제로 트러스트 보안이 전통적 ‘경계 보안’과 다른 핵심 차이는? 전통 모델은 ‘네트워크 안은 신뢰’였지만 제로 트러스트는 위치와 관계없이 모든 접근을 검증해요.

가장 흔한 클라우드 보안 실수

실수빈도예방법
S3 버킷 공개매우 높음퍼블릭 액세스 차단 기본 활성화
코드에 자격증명 하드코딩높음환경변수 + Secrets Manager
IAM 과잉 권한75%최소 권한 + 정기 감사
MFA 미설정높음루트 + 모든 IAM 사용자에 MFA
로깅 미활성화보통CloudTrail/Activity Log 항상 ON

핵심 정리

  • 클라우드 보안 사고의 대부분은 제공자 실패가 아닌 사용자 설정 실수
  • IAM의 최소 권한 원칙: 필요한 것만, 필요한 기간만 — 과잉 권한이 사고의 75%에 관여
  • 암호화는 저장 중·전송 중·사용 중 세 상태에서 모두 필요 — 키 관리가 실질적 보안 결정자
  • 제로 트러스트: 위치가 아닌 ID 기반으로 모든 접근 검증
  • 자격증명 노출 시 1순위는 즉시 비활성화 — 조사는 그 다음
  • MFA, 로깅, 정기 감사를 습관으로

Up Next: 보안 다음으로 중요한 것 — 클라우드 비용 관리. FinOps로 요금 폭탄을 방지하는 법을 배워요.

이해도 체크

1. 개발자가 '개발 중 편하게 쓰려고' AWS IAM 사용자에게 전체 관리자 권한을 줬어요. 나중에 제한하겠다고 해요. 위험은?

2. 고객 데이터를 클라우드에 저장해요. 컴플라이언스 담당자가 '데이터가 암호화돼 있냐?'고 물어요. 클라우드 제공자가 저장 중 데이터(at rest)를 암호화한다고 확인했어요. 데이터가 안전한가요?

3. 직원의 클라우드 자격증명이 공개 GitHub 리포에 노출됐어요. AWS 액세스 키와 시크릿 키가 코드에 포함돼 커밋됐어요. 가장 먼저 해야 할 일은?

모든 문제에 답해야 확인할 수 있어요

먼저 위의 퀴즈를 완료하세요

관련 스킬