Cert Notes/ 출퇴근 학습 노트
로드맵
KOEN
CLF-C02 · FoundationalCloud Practitioner - Foundational
DVA-C02 · AssociateDeveloper - Associate
SAA-C03 · AssociateSolutions Architect - Associate
  • Week 1
    • 1.AWS 인프라의 지도: 리전, AZ, 그리고 공동 책임이라는 약속
    • 2.IAM 기초: 누구에게 무엇을 허용할 것인가
    • 3.IAM 심화: STS, 권한 경계, 그리고 Confused Deputy의 그림자
    • 4.AWS Organizations, SCP, Control Tower: 다계정 거버넌스의 골격
    • 5.Week 1 종합: 시나리오로 단단해지는 기초와 IAM
  • Week 2
    • 1.VPC 서브넷 라우팅: 패킷이 인터넷에 닿는 길
    • 2.IGW, NAT Gateway, Bastion: 인터넷과 사설망 사이의 다리들
    • 3.보안 그룹 vs NACL, 그리고 Flow Logs가 말해주는 것
    • 4.VPC Peering, Transit Gateway, VPC Endpoint: VPC 너머의 연결
    • 5.Week 2 종합: 패킷이 흐르는 길을 한 번 더 그리기
  • Week 3
    • 1.EC2 인스턴스 유형과 구매 옵션: 하드웨어 설계와 경제학의 교차점
    • 2.EBS vs Instance Store: 영속성과 성능의 교환, 그리고 파일 시스템의 선택
    • 3.ELB: 계층별 로드 밸런싱의 설계 철학과 ALB·NLB·GLB의 선택 기준
    • 4.Auto Scaling Group: 제어 이론, 예측 확장, 그리고 우아한 종료의 기술
    • 5.Week 3 종합 복습: EC2·스토리지·ELB·ASG를 하나의 아키텍처로 연결하기
  • Week 4
    • 1.S3: 객체 스토리지의 내부 구조, 일관성 모델의 진화, 그리고 대규모 운영 패턴
    • 2.S3 스토리지 클래스와 수명 주기: 데이터 온도 관리의 경제학
    • 3.S3 보안: 접근 제어의 계층 구조, 암호화 키 관리, 그리고 데이터 유출 방지
    • 4.CloudFront와 Storage Gateway: CDN의 내부 구조와 하이브리드 스토리지 패턴
    • 5.Week 4 종합 복습: S3·CloudFront·스토리지 패턴을 하나의 판단 체계로
  • Week 5
    • 1.RDS: 관계형 데이터베이스를 클라우드에서 운영한다는 것
    • 2.Aurora: AWS가 다시 설계한 관계형 데이터베이스
    • 3.DynamoDB: 스키마 없는 세계에서 설계한다는 것
    • 4.ElastiCache와 인메모리 데이터 스토어: 속도의 물리학
    • 5.Week 5 복습: 데이터베이스 선택의 기술
  • Week 6
    • 1.Lambda: 서버 없이 코드를 실행한다는 것의 진짜 의미
    • 2.API Gateway: 클라이언트와 백엔드 사이의 중재자
    • 3.Step Functions와 AppSync: 오케스트레이션과 GraphQL
    • 4.컨테이너: ECS, EKS, Fargate, ECR
    • 5.Week 6 복습: 서버리스 + 컨테이너 종합
  • Week 7
    • 1.SQS: 메시지 큐가 분산 시스템에 답하는 방식
    • 2.SNS: 토픽, 팬아웃, 그리고 1:N 알림이 만들어지는 방식
    • 3.EventBridge: 이벤트 라우팅 허브가 SaaS·AWS·내부 앱을 한 곳에 모으는 방식
    • 4.Kinesis: 실시간 스트림이 큐와 어떻게 다른 문제를 푸는가
    • 5.Week 7 복습: 메시징의 네 가지 모델과 분산 시스템의 의사결정
  • Week 8
    • 1.KMS: 키 관리가 클라우드 보안의 뿌리인 이유
    • 2.Secrets Manager·Parameter Store·CloudHSM: 비밀과 구성을 다루는 세 가지 도구
    • 3.Cognito: 사용자 인증을 클라우드 서비스로 분리하기
    • 4.WAF·Shield·GuardDuty·Inspector·Macie: 클라우드 보안 관제의 5개 축
    • 5.Week 8 종합: 보안 도메인 시나리오 12
  • Week 9
    • 1.CloudWatch: 관찰성은 왜 메트릭·로그·트레이스 세 기둥으로 갈라졌나
    • 2.CloudTrail: 감사 로그는 왜 변조 불가능해야 하나
    • 3.Config와 Systems Manager: 원하는 상태를 어떻게 강제하나
    • 4.X-Ray·Trusted Advisor·Health Dashboard: 한 요청이 여러 서비스를 지날 때 누가 느린지 어떻게 아는가
    • 5.Week 9 종합: 관찰성과 거버넌스를 "누가·언제·무엇·왜"로 꿰기
  • Week 10
    • 1.컴퓨팅 비용은 왜 약정·시장·소유권 세 축으로 갈라졌나
    • 2.스토리지 비용은 왜 "단가"가 아니라 "접근 패턴"의 함수인가
    • 3.데이터 전송 비용은 왜 청구서의 숨은 30%가 되는가
    • 4.비용 거버넌스는 왜 "측정·책임·자동화" 세 단계로 나뉘나
    • 5.Week 10 종합: 비용 최적화를 하나의 사고 체계로 묶기
  • Week 11
    • 1.가용 영역과 리전은 왜 "물리적 거리"라는 비용을 사이에 두고 갈라지나
    • 2.DR은 왜 "네 단계의 스펙트럼"으로 정리됐나
    • 3.DNS는 어떻게 "이름 한 번 묻는 것"으로 글로벌 트래픽을 조종하나
    • 4.마이그레이션은 왜 "무엇을 옮기는가"보다 "어떻게 옮길 수 없는가"로 결정되나
    • 5.복원력·DR·마이그레이션을 하나의 결정 트리로 꿰기
  • Week 12
    • 1.보안 도메인은 왜 "정책 평가 순서"라는 한 줄의 알고리즘으로 수렴하나
    • 2.복원력 도메인은 왜 "장애 반경과 복제 모드"라는 두 변수로 환원되나
    • 3.고성능 도메인은 왜 "데이터를 사용자에게 얼마나 가까이 두나"로 환원되나
    • 4.비용 도메인은 왜 "운영이 아니라 설계 단계의 결정"으로 수렴하나
    • 5.시험이 끝까지 묻는 것은 "키워드를 서비스로 번역하는 속도"다
SOA-C02 · AssociateCloudOps Engineer - Associate
SAP-C02 · ProfessionalSolutions Architect - Professional
DOP-C02 · ProfessionalDevOps Engineer - Professional
SCS-C03 · SpecialtySecurity - Specialty
MLA-C01 · AssociateMachine Learning Engineer - Associate
AIF-C01 · FoundationalAI Practitioner - Foundational
DEA-C01 · AssociateData Engineer - Associate
MLS-C01 · SpecialtyMachine Learning - Specialty
합격 후기
← SAA-C03/Week 1/Day 5
SAA-C03· AssociateWeek 1 · Day 5읽기 약 33분

Day 5 - Week 1 종합: 시나리오로 단단해지는 기초와 IAM

한 주 동안 글로벌 인프라부터 멀티 계정 거버넌스까지 훑었다. 머리로는 다 안다고 느껴도, SAA-C03 시험은 항상 한 줄짜리 시나리오로 변형해서 묻는다. "본사 밖으로 데이터가 못 나간다"라는 한 문장에서 Outposts가 떠올라야 하고, "TCP 게임 서버 글로벌 지연 최소화"에서 Global Accelerator가 즉시 튀어나와야 한다. 시험은 키워드를 외운 사람을 거르는 게 아니라 "이 시나리오의 본질이 무엇이냐"를 빠르게 판단할 수 있는 사람을 뽑으려 한다.

이 글은 Week 1을 다시 정리하면서 시나리오 키워드 → 솔루션 매핑을 머리에 새기는 시간이다. 단순 암기가 아니라 "왜 그 답인지"를 한 번 더 짚는다. 시나리오 매핑은 시험 전날 다시 한 번 통독하면 합격선이 확실히 올라가는 영역이기도 하다. 그리고 실무에서는 이 매핑이 곧 "사고가 나기 전에 다른 사람이 짠 설계를 검토하는 능력"이 된다 — 1주차에서 본 모든 사건(Capital One, us-east-1, 도쿄 AZ, SolarWinds, Travis CI)이 결국 누군가가 같은 매핑을 헷갈렸을 때 일어났다.

Week 1 그림 다시 그리기

[ AWS Global Infrastructure ]
       │
       ├── Region (34) ──┬── AZ (3+) ──┬── DC
       │                 │             └── DC
       │                 └── AZ ── DC
       ├── Edge Location (600+) ── CloudFront / R53 / GA / WAF
       ├── Local Zone (30+) ── 미니 리전
       ├── Wavelength ── 5G 엣지
       └── Outposts ── 고객 DC

[ Identity ]
   User / Group / Role / Policy
       │
   AssumeRole (STS) → 임시 자격 증명
       │
   ┌─── External ID (Confused Deputy 방어)
   ├─── Permissions Boundary (권한 상한)
   ├─── ABAC (태그 기반)
   └─── OIDC/SAML (페더레이션)

[ Multi-Account ]
   Organizations → OU 트리
       │
   ┌─── SCP (계정 권한 상한)
   ├─── Control Tower (자동 Landing Zone)
   ├─── RAM (리소스 공유)
   └─── StackSets (일괄 배포)

이 세 영역이 Week 1의 결론이고, Week 2 ~ Week 12의 모든 서비스가 이 세 평면 위에 얹어진다고 보면 정확하다. 네트워킹은 AZ 위, 보안은 IAM 위, 다계정 패턴은 Organizations 위에서 동작한다. 그리고 이 세 평면의 교집합 — "어느 계정의 어느 리전 어느 AZ에 있는 리소스에 누가 무엇을 할 수 있는가" — 가 결국 모든 SAA 시나리오의 좌표계가 된다.

💡 관련 이론: 이 3층 모델은 사실 분산 시스템 보안의 고전적인 3축 — Where(위치), Who(신원), What(자원) — 을 클라우드 운영에 매핑한 것이다. 1985년 NIST가 정의한 보안 3요소(Confidentiality / Integrity / Availability)에 더해, 2003년 NIST SP 800-53이 명문화한 Access Control(AC), Audit & Accountability(AU), System and Communications Protection(SC) 세 영역이 거의 일대일로 매칭된다. AC는 IAM, AU는 CloudTrail/Config, SC는 VPC/네트워크 컨트롤로 구현된다.

🔍 더 깊이: 이 3층은 실제 AWS의 권한 평가 엔진에서도 그대로 반영된다. AWS Zelkova(IAM 정형 검증)와 Tiros(네트워크 정형 검증)는 각각 IAM/SCP 정책과 VPC 라우팅을 SMT 제약으로 변환해서 "이 요청이 도달 가능한가"를 푼다. 2018년 USENIX Security 논문 "Semantic-based Automated Reasoning for AWS Access Policies"가 Zelkova의 기반이고, 같은 해 발표된 "Reachability Analysis for AWS-based Networks"가 Tiros의 기반이다. Access Analyzer, Reachability Analyzer, IAM Access Advisor가 모두 이 위에서 돌아간다.

시나리오 키워드 매핑

시나리오 키워드정답 후보이유
"본사 안에 데이터 유지" + "AWS API 사용"Outposts고객 DC 안 AWS 하드웨어
"5G", "자율주행", "AR/VR"Wavelength통신사 엣지
"후반 작업 VFX", "LA·마이애미 도시 사용자"Local Zones도시 단위 미니 리전
"TCP/UDP", "게임", "VoIP"Global AcceleratorL4 가속
"HTTP 정적 콘텐츠 캐시"CloudFrontL7 캐시
"DNS 페일오버"Route 53DNS 라우팅
"다계정", "Okta SSO"IAM Identity CenterSAML/SCIM 페더레이션
"GitHub Actions에서 AWS 배포"OIDC 페더레이션단명 토큰
"외부 SaaS 모니터링"Cross-Account Role + External IDConfused Deputy 방어
"개발자가 Role을 만들지만 광범위 권한 금지"Permissions Boundary권한 상한
"모든 계정에서 특정 리전 차단"SCP계정 권한 상한
"새 계정 자동 베이스라인 적용"Control Tower + StackSets자동 Landing Zone
"여러 계정에서 VPC 공유"AWS RAM리소스 공유
"EC2가 S3 접근 시 안전한 방법"Instance Profile + IAM Role키 노출 방지
"MFA 강제"정책 Condition aws:MultiFactorAuthPresentIAM 강제
"AZ 한 곳 죽어도 서비스 유지"Multi-AZ ASG + ELBHA 패턴
"한 리전 죽어도 1초 RPO"Aurora Global DatabaseDR 패턴
"데이터 주권 + 한국 금감원 규제"Outposts / 국내 리전데이터 위치 제한
"기존 IdP를 그대로 쓰면서 AWS 권한 부여"IAM Identity Center + SAML외부 IdP 페더레이션
"Lambda가 다른 계정 S3 접근"Cross-Account Role + Resource Policy양쪽 모두 Allow 필요
"Active Directory 사용자에게 AWS 권한"AD Trust + IAM Identity Center엔터프라이즈 표준
"임시 직원에게 기한 정해 권한"Session Tag + Permissions Boundary자동 만료 + 상한
"S3 버킷 의도치 않은 공개 차단"Block Public Access (계정+버킷 4단)데이터 유출 방지

이 표는 시험 전날 30분이면 통독되고, 같은 매핑을 5번 이상 반복해서 보면 시험장에서 시나리오 첫 줄만 보고 후보 답이 떠오른다. 키워드 → 솔루션 매핑은 SAA의 "패턴 인식 시험"적 성격을 가장 잘 보여준다.

💡 관련 이론: 이런 패턴 매핑 방식은 인지심리학의 Recognition-Primed Decision Making(RPD, Gary Klein 1989) 모델과 정확히 같다. 응급실 의사, 소방관, 체스 마스터가 "초보자처럼 모든 옵션을 계산"하지 않고 "이 상황은 X패턴, 그러니 Y해법"으로 즉시 가는 사고방식. AWS SAA도 결국 200개 정도의 시나리오 패턴을 분류하는 시험이다. Daniel Kahneman의 Thinking, Fast and Slow(2011)에서 말한 System 1(직관)과 System 2(분석)로 보면, SAA 시험은 System 1을 패턴화시켜 빠르게 후보를 좁힌 뒤 System 2로 검증하는 흐름이 가장 효율적이다.

⚠️ 함정: 같은 키워드가 다른 답으로 가는 경우도 많다. "암호화"는 KMS인가 CloudHSM인가? 단일 회사 사용이면 KMS, FIPS 140-2 Level 3 규제(FedRAMP High, 일부 금융)면 CloudHSM. "DR"은 Multi-AZ인가 Cross-Region인가? AZ 단위 격리는 Multi-AZ, 리전 단위 격리는 Cross-Region. 키워드만 보지 말고 "이 시나리오의 위협 모델이 무엇이냐"를 함께 봐야 한다.

CAP/PACELC와 AWS 서비스 매핑

SAA에서 직접 묻지는 않지만, 시나리오 해석에 결정적이다. 분산 시스템의 trade-off를 모르면 "왜 이 옵션이 강한 일관성을 못 주는가" 같은 질문에 답을 못 한다. 그리고 이 매핑은 실무에서도 "왜 우리 서비스의 글로벌 일관성이 깨졌는가"를 디버깅할 때 직접 쓰인다.

서비스정합성 모델위치
DynamoDB (default)Eventually ConsistentAP
DynamoDB (strong)Strong Consistent (단일 리전)CP
DynamoDB Global TableMulti-Master, Last-Writer-WinsAP
Aurora (single region)StrongCP
Aurora Global DBAsync replicationAP (리전 간)
RDS Multi-AZSync replicationCP
S3Strong read-after-write (2020.12 이후)CP
EFSStrong (close-to-open)CP
ElastiCache for Redis (Cluster Mode)Async replicationAP
FSx for LustreStrong (POSIX)CP
NeptuneStrong (single writer)CP

💡 관련 이론: CAP 정리(Brewer 2000, Gilbert & Lynch 2002)는 네트워크 분할이 있을 때 Consistency와 Availability 중 하나를 골라야 한다고 말한다. PACELC(Abadi 2012)는 그 위에 "분할이 없을 때도 Latency vs Consistency의 trade-off가 있다"고 덧붙인다. AWS의 거의 모든 글로벌 서비스가 PA/EL(분할 시 가용성, 평상시 지연시간) 쪽으로 기울어 있다. 2020년 12월 S3가 strong read-after-write consistency를 갖게 된 건 분산 시스템 역사상 큰 사건이다. 그 전까지는 새 객체는 즉시 보였지만 update/delete 후에는 eventual이라 SAA 시험 함정 단골이었다. 지금은 모든 S3 작업이 strong consistent다 — 단 객체 메타데이터 캐싱(CloudFront, ALB origin) 레이어는 여전히 eventual.

🔍 더 깊이: DynamoDB의 strong consistency는 단일 리전 안에서만 옵션으로 제공되고(ConsistentRead=true), Global Table은 항상 eventual이다. Global Table의 충돌 해결은 Last-Writer-Wins(LWW) 기반이라 동시 쓰기 시 데이터 손실 가능성이 있다. 그래서 멀티 마스터 글로벌 쓰기가 필요하면 DynamoDB Global Table을 쓰되 "타임스탬프 충돌이 비즈니스적으로 허용 가능한가"를 먼저 따져야 한다. 더 엄격한 일관성이 필요하면 CRDT(Conflict-free Replicated Data Type)나 Paxos/Raft 기반 합의 알고리즘이 필요한데, AWS는 이를 Aurora의 quorum-based replication(6-way write across 3 AZ, 4/6 read, 3/6 write 쿼럼)으로 일부 제공한다. Aurora 논문 Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases(SIGMOD 2017)가 이 아키텍처의 정수다.

📚 사례: 2015년 GitHub은 자체 MySQL 클러스터 분할 사고로 24시간 동안 데이터 일관성이 깨졌다. 두 데이터센터 간 네트워크 분할이 발생했고, 양쪽 모두 자신이 primary라고 판단해 쓰기를 받아버린 split-brain 사건이다. 사후 분석 보고서에서 GitHub은 "분할 시 우리는 CP를 선택하고 가용성을 포기한다"고 명시했다. 이런 사례는 CAP의 trade-off가 추상적 이론이 아니라 매일 운영자가 마주하는 결정임을 보여준다. AWS는 RDS Multi-AZ에서 같은 결정을 내렸고, 그래서 failover 동안 60초 정도 가용성이 끊긴다.

⚠️ 함정: "Aurora는 strong consistent이므로 글로벌 DB도 같다"고 가정하면 틀린다. Aurora Global Database는 storage-level async replication(보통 1초 RPO)이고 secondary 리전은 read-only다. 글로벌 쓰기를 원하면 DynamoDB Global Table을 써야 하지만 그건 LWW의 충돌 위험을 받아들여야 한다. 또 "ElastiCache Redis Cluster Mode는 ASync replication이지만 multi-AZ failover로 가용성 보장"이라고 보는 것도 부분적으로 틀리다 — failover 시 ack되지 않은 쓰기는 손실될 수 있다.

공동 책임 모델 재정리

       추상화 ↑                              AWS 책임 ↑
┌─────────────────────────────────────┐
│ S3, DynamoDB, Lambda (완전 관리)    │ 데이터 분류·IAM만 고객
│ RDS, Fargate (PaaS)                 │ + 네트워크 설정 고객
│ ECS on EC2, EKS Self-Managed        │ + OS 패치 고객
│ EC2 + EBS (IaaS)                    │ OS·앱 전부 고객
└─────────────────────────────────────┘
       추상화 ↓                              고객 책임 ↑

서비스 추상화가 올라갈수록 책임 경계선이 위로. 그래도 데이터 분류·IAM·암호화 키 관리는 항상 고객이라는 점이 핵심. 이 원칙은 Capital One 사고가 가장 명확하게 보여준다 — AWS는 자기 인프라 책임을 다했고, 사고는 고객 영역의 IMDSv1·과한 IAM 권한에서 났다.

📚 사례: 2022년 6월 Toyota 자회사가 GitHub 공개 저장소에 5년간 액세스 키가 노출된 사고가 있었다. 약 30만 명 고객 데이터가 위험에 노출됐고, 원인은 개발자가 코드와 함께 자격 증명을 푸시한 것이었다. AWS 책임은 0% — 모든 게 고객 책임 영역에서 일어났다. 사후 표준 권고는 ① IAM User 대신 IAM Role + IRSA/Instance Profile, ② Access Key를 발급해야 한다면 IAM Identity Center의 임시 자격 증명, ③ Git pre-commit hook(git-secrets, truffleHog)으로 커밋 차단. 같은 패턴의 사고가 Uber(2016), Imperva(2019), Codecov(2021)에서도 반복됐다.

🔍 더 깊이: 공동 책임 모델은 서비스마다 미묘하게 다르다. RDS는 DB 엔진 패치(minor version)는 AWS, major version 업그레이드는 고객 선택. Lambda는 런타임 패치는 AWS, 런타임 EOL 후 마이그레이션은 고객(Node 14 → 18 등). ECS Fargate는 컨테이너 OS·런타임은 AWS, 이미지 안의 OS 패키지 패치는 고객. 이 미묘한 차이가 시험 함정에 자주 등장한다. AWS Trusted Advisor와 AWS Security Hub의 Foundational Security Best Practices(FSBP)가 이런 책임 경계를 자동 점검해준다.

정책 평가 결정 트리

요청 → SCP(Org) → Resource Policy → Identity Policy → Permissions Boundary → Session Policy
   각 단계에서 명시 Deny → 즉시 DENY
   모든 단계 통과 → ALLOW
   어느 곳도 Allow 없음 → DENY (default)

같은 계정 = 합집합, 교차 계정 = 교집합, KMS = Key Policy 명시 위임 필수. 이 세 줄이 IAM 평가 로직의 전부다. 면접에서 "AWS IAM 평가 로직을 1분 안에 설명해보라"는 질문을 받았다면 이 세 줄이 답이다.

⚠️ 함정: "Resource Policy만 Allow하면 Cross-Account가 된다"는 게 가장 흔한 오답. 같은 계정이면 그게 맞지만, 교차 계정에서는 호출자 계정의 Identity Policy에서도 Allow가 있어야 한다. 시험 단골 함정. 또 KMS는 별격이다 — Key Policy에서 명시적으로 IAM에게 위임("Enable IAM User Permissions" statement)하지 않으면 IAM 정책에서 Allow를 줘도 KMS 키를 못 쓴다. 이는 KMS가 "키 소유자가 최종 권한자"라는 모델이기 때문이다.

🔍 더 깊이: 정책 평가는 사실 6개 정책 타입의 교차로 결정된다 — SCP, Resource Policy, Identity Policy, Permissions Boundary, Session Policy, VPC Endpoint Policy. AWS 공식 문서의 "Policy Evaluation Logic" 흐름도가 가장 정확한 레퍼런스다. 각 정책 타입의 "Allow 필요 vs 선택"이 시나리오마다 다르다. 한 마디 요약: 명시 Deny는 항상 최종, Allow는 모든 경계를 통과해야.

💡 관련 이론: 이 모델은 보안 이론의 Mandatory Access Control(MAC)과 Discretionary Access Control(DAC)의 혼합이다. SCP와 Permissions Boundary는 MAC(상위 권한자가 강제하는 한도), Identity/Resource Policy는 DAC(소유자가 자유롭게 설정). 미국 군사 보안 표준 Bell-LaPadula Model(1973)의 multilevel security 개념과 유사하다. AWS가 정책 평가를 SMT solver로 푸는 것도 이 모델이 형식 검증 가능한 구조를 갖기 때문.

다계정 표준 토폴로지

계정역할
ManagementOrg 관리, 결제. 워크로드 금지
Log ArchiveCloudTrail/Config 중앙 저장. WORM
Audit/SecurityGuardDuty, Security Hub 위임 관리자
Networking중앙 VPC + Transit Gateway, RAM 공유
Shared Services공통 도구(CI/CD, Artifactory 등)
Prod운영 워크로드
Staging운영 직전 검증
Dev개발 워크로드
Sandbox개인 실험. SCP로 비용·리전 강제 제한

이 토폴로지는 AWS Security Reference Architecture(SRA) 문서에 권장 형태로 명시되어 있다. 모든 대기업 고객이 이 변형을 쓴다고 보면 정확하다. Netflix, Capital One, Airbnb, Slack 등의 공개 발표 자료를 보면 거의 같은 패턴이 반복된다.

📚 사례: 2019년 Netflix Tech Blog는 자사 다계정 전략을 공개했는데, 1,000개 이상의 AWS 계정을 운영하면서 워크로드별·팀별·환경별로 계정을 잘게 쪼개는 "Account per Workload" 패턴을 표준화했다고 밝혔다. 이유는 ① 블래스트 반경 제한, ② 비용·태그 자동화, ③ IAM 권한 단순화. 같은 패턴을 Spotify, Lyft, Stripe도 채택했고, 이게 SRA가 권장하는 토폴로지의 실제 모델이다. 2023년 기준 큰 회사는 보통 100~5,000 계정을 운영하고, AWS Organizations의 한도(10,000 계정/Org)가 사실상 상한이다.

🔍 더 깊이: 다계정 운영의 실무 핵심은 두 가지 자동화다. ① 계정 발급 자동화 — Control Tower의 Account Factory 또는 Account Factory for Terraform(AFT)으로 새 계정 생성 → 베이스라인 적용 → 권한 부여 → 알림이 GitOps 흐름으로 묶인다. ② 베이스라인 자동 배포 — CloudFormation StackSets의 SERVICE_MANAGED + auto-deployment=Enabled 옵션으로 새 계정에 자동으로 보안 베이스라인(GuardDuty, Config Rules, IAM Password Policy, S3 BPA 등)이 들어간다. 이 두 자동화가 없으면 100계정 운영은 사람으로 불가능하다.

자주 헷갈리는 핵심 비교

항목AB차이
Local ZonesLA·마이애미 등 도시 미니 리전Wavelength: 통신사 5G 엣지LZ는 일반 인터넷, WL은 모바일 5G
CloudFrontL7 HTTP 캐시Global Accelerator: L4 가속HTTP면 CF, TCP/UDP면 GA
IAM User영구 자격 증명IAM Identity Center: 임시 SSO다계정·외부 IdP면 IC
ZoneName계정별 셔플ZoneId: 계정 무관 동일다계정 동기화는 ZoneId
Permissions Boundary신원 권한 상한SCP: 계정 권한 상한적용 단위가 다름
Cross-Region Read ReplicaAsync, 수동 promoteAurora Global DB: Async + Fast failover (~1분)RPO·RTO 차이
CloudFront Functions엣지 PoP, 1ms 제약Lambda@Edge: Regional Edge, 더 무거움위치·런타임 차이
KMS멀티 테넌트 HSMCloudHSM: 단독 HSM, FIPS 140-2 L3규제 강도
STS AssumeRole일반 cross-accountAssumeRoleWithWebIdentity: OIDC외부 IdP 페더레이션
Resource Policy AllowSame-account 충분Cross-account: 양쪽 Allow 필요평가 로직

⚠️ 함정: ZoneName vs ZoneId는 시험에 자주 안 나오지만, 실무에서는 "다른 계정과 같은 AZ 쓰기"를 묻는 보안·비용 시나리오에서 결정적이다. CloudFront vs Global Accelerator는 시험 단골이고, 키워드 "TCP/UDP", "게임", "VoIP", "MQTT", "WebRTC 시그널링"이 보이면 무조건 GA. CloudFront Functions vs Lambda@Edge도 같은 비교 축인데, "수 ms 미만 응답"이면 Functions, "Node.js/Python 런타임 풀 사용"이면 Lambda@Edge.

🔍 더 깊이: AWS는 같은 기능을 여러 서비스로 제공할 때 항상 trade-off 축이 다르다. KMS vs CloudHSM은 추상화 vs 격리도, ALB vs NLB는 L7 기능 vs L4 throughput, SQS vs SNS vs EventBridge는 point-to-point vs fanout vs schema-routing. SAA 시험은 항상 "어느 축에서 trade-off를 묻고 있느냐"를 식별해야 한다. 이 사고법을 익히면 모르는 새 서비스도 동일한 축 위에 매핑해서 후보 답을 좁힐 수 있다.

정리하며

Week 1은 "AWS라는 우주의 좌표계"를 머리에 박는 시간이었다. Region/AZ/Edge의 격리 모델, IAM의 정책 평가, 다계정의 거버넌스. 이 셋이 나머지 11주 모든 주제의 배경이 된다. 다음 주는 그 위에 네트워킹(VPC, 서브넷, 라우팅)을 얹는다. 한 번에 다 이해하려 하지 말고, 시나리오 문제 풀 때마다 이 표를 다시 펴서 매핑하는 습관을 들이면 시험 직전엔 키워드 → 솔루션 매핑이 자동 반사로 박힌다. 그리고 그 자동 반사가 SAA 합격뿐 아니라 실무 설계에서도 "30분 미팅 안에 솔루션 후보 3개를 그릴 수 있는" 시니어 엔지니어의 핵심 역량이다.

📝 연습 문제

선택지를 클릭하면 정답·해설이 펼쳐집니다.

문제 1

한 글로벌 게임 회사가 전 세계 사용자에게 일관된 TCP 기반 게임 서버 응답 시간을 제공하려 한다. 가장 적합한 솔루션은?

문제 2

한 금융 회사가 한국 금융감독원 규정으로 일부 데이터를 본사 내부에 보관하면서도 AWS API로 운영해야 한다. 가장 적합한 솔루션은?

문제 3

한 회사가 50개 AWS 계정에서 us-east-1 외 모든 리전 사용을 차단하려 한다. 가장 효율적인 방법은?

문제 4

EC2가 S3에 접근하는 가장 안전한 방식은?

문제 5

GitHub Actions가 AWS에 배포할 때 키 회전 부담을 없애려면?

문제 6

한 SaaS가 우리 AWS의 CloudWatch 로그를 수집한다. Confused Deputy 방어를 위해 필요한 것은?

문제 7

한 회사가 새 AWS 계정을 매주 10개씩 발급하면서 동일한 보안 베이스라인을 적용하려 한다. 가장 적합한 방법은?

문제 8

한 회사가 신입 개발자에게 IAM Role을 자유롭게 만들 권한을 주되, AdministratorAccess급 Role 생성은 막고 싶다. 가장 적절한 방법은?

문제 9

한 AZ에서 냉방 장애로 EC2가 다운된다. 이미 ASG가 multi-AZ로 구성되어 있다면?

문제 10

다음 중 AWS 책임이 아닌 것은?

문제 11

한 시스템이 트랜잭션당 1ms 미만 RPO를 요구하고 한 리전 안에서만 운영된다. RDS는?

문제 12

한 회사가 Organizations 안에서 중앙 Networking 계정의 VPC 서브넷을 다른 30개 워크로드 계정에 공유하려 한다. 가장 적합한 솔루션은?

이전AWS Organizations, SCP, Control Tower: 다계정 거버넌스의 골격Week 1 · Day 4다음 VPC 서브넷 라우팅: 패킷이 인터넷에 닿는 길Week 2 · Day 1

이 페이지

  • Week 1 그림 다시 그리기
  • 시나리오 키워드 매핑
  • CAP/PACELC와 AWS 서비스 매핑
  • 공동 책임 모델 재정리
  • 정책 평가 결정 트리
  • 다계정 표준 토폴로지
  • 자주 헷갈리는 핵심 비교
  • 정리하며
  • 종합 연습 문제