S3 origin
Origin Access Control
S3 버킷을 공개하지 않고 CloudFront에서만 읽게 합니다. SSE-KMS 암호화 객체와 PUT·DELETE 요청도 지원하며, 레거시 OAI를 대체하는 권장 방식입니다.
Amazon CloudFront · 콘텐츠 전송 네트워크
CloudFront는 사용자 요청을 지연이 가장 낮은 엣지 로케이션에서 받아 캐시로 응답합니다. 캐시에 없는 요청만 AWS 네트워크를 따라 오리진까지 가고, 오리진은 사설 서브넷이나 비공개 S3 버킷에 둘 수 있습니다.
POP에 없던 객체를 regional edge cache에서 받아 POP에도 저장합니다. 오리진까지 가지 않았습니다.
월간 가용성 SLA
GET 응답 하나당 최대 캐시 크기
TLS 1.3 기반 QUIC, 연결 마이그레이션 지원
Shield Standard DDoS 보호 기본 적용
Why CloudFront
국내외 사용자에게 같은 품질로 콘텐츠와 API를 전달하려면, 요청을 사용자 가까이에서 끝내고 오리진으로 가는 요청 수를 줄여야 합니다.
POP, regional edge cache, Origin Shield가 차례로 요청을 흡수해 오리진 부하를 줄입니다.
Shield Standard가 네트워크·전송 계층 DDoS를 막고, AWS WAF가 애플리케이션 계층 요청을 걸러냅니다.
CloudFront Functions와 Lambda@Edge로 헤더, URL, 인증 로직을 오리진 앞에서 처리합니다.
Request path
DNS가 사용자를 지연이 가장 낮은 POP으로 보내고, 캐시에 없으면 다음 계층으로 넘어갑니다. PUT, POST, PATCH, OPTIONS, DELETE 같은 프록시 메서드와 동적 요청은 regional edge cache를 거치지 않고 POP에서 오리진으로 바로 갑니다.
TLS를 종료하고 캐시를 확인합니다. AWS WAF 검사와 CloudFront Functions가 이 단계에서 실행됩니다.
TLS terminationViewer mTLSAWS WAFCloudFront Functions한 지역의 POP들이 공유하는 더 큰 캐시입니다. 오리진이 같은 리전의 S3 버킷이면 이 계층을 건너뛰고 S3로 바로 갑니다.
Shared cacheCache missGET · HEADOrigin Shield를 켜면 모든 캐시 계층의 오리진 요청이 지정한 리전 한 곳으로 모여, 같은 객체에 대한 요청이 오리진에 한 번만 가도록 합칠 수 있습니다.
Origin ShieldOrigin groupOACVPC originOrigin mTLSOrigin request / responseFeatures
S3 origin
S3 버킷을 공개하지 않고 CloudFront에서만 읽게 합니다. SSE-KMS 암호화 객체와 PUT·DELETE 요청도 지원하며, 레거시 OAI를 대체하는 권장 방식입니다.
Private origin
사설 서브넷의 ALB, NLB, EC2 인스턴스를 오리진으로 씁니다. CloudFront가 서비스 관리형 ENI로 접근하므로 오리진에 공인 IP가 필요 없습니다. VPC에는 인터넷 게이트웨이가 연결되어 있어야 하며, AWS RAM으로 다른 계정의 VPC origin을 공유받아 쓸 수도 있습니다.
Availability
Primary와 Secondary 오리진을 origin group으로 묶습니다. 지정한 상태 코드나 연결 실패, 타임아웃이 나면 GET, HEAD, OPTIONS 요청을 Secondary로 다시 보냅니다.
Edge security
배포에 web ACL을 연결해 L7 요청을 검사합니다. Shield Standard는 별도 요금 없이 모든 배포에 적용되고, Shield Advanced로 확장할 수 있습니다.
Client identity
엣지에서 클라이언트의 X.509 인증서를 trust store로 검증해, 신뢰하지 않는 클라이언트를 애플리케이션 앞에서 차단합니다. Connection Function으로 검증 로직을 더하고 OCSP 폐기 확인, 인증서를 오리진에 넘기는 passthrough 모드도 쓸 수 있습니다. 추가 요금은 없습니다.
Pricing
CDN, AWS WAF·DDoS 보호, 봇 관리, Route 53 DNS, CloudWatch Logs 수집, 엣지 컴퓨팅, S3 스토리지 크레딧을 배포 하나 단위의 월 정액으로 묶은 요금제입니다. Free, Pro, Business, Premium 네 등급이 있고 초과 요금이 없습니다.
Edge compute
헤더 조작, URL 재작성, 토큰 검사처럼 가볍고 짧은 로직은 CloudFront Functions에, 네트워크 호출이나 요청 본문 처리가 필요한 로직은 Lambda@Edge에 둡니다.
| 항목 | CloudFront Functions | Lambda@Edge |
|---|---|---|
| 런타임 | JavaScript | Node.js, Python |
| 트리거 이벤트 | Viewer request, Viewer response (mTLS 연결 단계는 Connection Function) | Viewer request·response, Origin request·response |
| 실행 시간 | 1 ms 미만 | viewer · origin 이벤트 모두 최대 30 초 |
| 최대 메모리 | 2 MB | Lambda 할당량과 동일, 최대 10,240 MB |
| 코드 크기 | 10 KB | viewer · origin 모두 50 MB |
| 네트워크 · 본문 접근 | 불가 | 가능 |
| 규모 | 초당 수백만 요청 | 리전당 초당 최대 10,000 요청 |
Reference architecture
동적 요청은 VPC origin으로 사설 서브넷의 ALB에, 정적 파일은 OAC로 보호한 S3에 보냅니다. ALB를 Primary로 둔 origin group에 S3 정적 페이지를 Secondary로 묶어 장애 시 응답을 유지합니다.
좁은 화면에서는 다이어그램을 좌우로 밀어서 보세요.
Getting started
S3 버킷이나 사설 서브넷의 ALB를 준비합니다. 둘 다 공개하지 않아도 됩니다.
오리진을 등록하고 S3에는 OAC를, ALB에는 VPC origin을 연결합니다.
경로 패턴별로 캐시 정책, 오리진 요청 정책, 허용 메서드를 정합니다.
대체 도메인 이름을 추가하고 us-east-1의 ACM 인증서를 연결합니다.
Route 53에서 배포를 가리키는 alias 레코드를 만들고 응답 헤더로 캐시 동작을 확인합니다.
Pricing
종량제에서는 인터넷으로 나가는 데이터 전송량과 요청 수가 비용의 대부분을 차지합니다. CDN, AWS WAF, DDoS 보호, Route 53 DNS 등을 월 정액으로 묶은 flat-rate 요금제를 대신 고를 수도 있습니다.
| 과금 항목 | 과금 기준 | 참고 |
|---|---|---|
| 인터넷 데이터 전송 | 엣지에서 사용자에게 보낸 데이터 GB당, 지역별 단가 차등 | 프리 티어로 매월 1 TB가 무료입니다. |
| 오리진 방향 데이터 전송 | POST·PUT 요청 본문과 WebSocket·gRPC의 클라이언트→서버 트래픽 GB당 | S3, VPC origin 등 AWS 오리진에서 CloudFront로 가져오는 전송은 무료입니다. |
| HTTP · HTTPS 요청 | 요청 1만 건당, HTTP와 HTTPS 단가 구분 | 프리 티어로 매월 1,000만 건이 무료입니다. |
| Origin Shield | Origin Shield를 지나는 요청 1만 건당, 지정한 리전 기준 | 캐시 미스로 Origin Shield까지 온 요청에만 붙습니다. |
| 무효화 | 요청한 경로 또는 태그당 | 매월 처음 1,000개 경로·태그는 무료입니다. |
| 엣지 함수 | CloudFront Functions 호출 100만 건당, KeyValueStore 읽기 100만 건당. Lambda@Edge 요청 100만 건당과 GB-초 단위 실행 시간 | Functions는 프리 티어로 월 200만 호출과 KeyValueStore 읽기 200만 건이 무료이고, Lambda@Edge에는 프리 티어가 없습니다. |
| 부가 기능 | 실시간 로그 100만 줄당, 필드 수준 암호화 요청 1만 건당, 전용 IP 사용자 지정 SSL 인증서당 월, Anycast static IP의 IPv4 주소당 시간 | Anycast static IP 목록의 IPv6 주소에는 요금이 없습니다. |
| 연관 서비스 | AWS WAF web ACL·규칙·요청, Shield Advanced, Route 53 | 각 서비스에서 따로 과금합니다. Shield Standard는 무료입니다. |
요금 단가는 리전과 사용량에 따라 다릅니다. 최신 단가는 CloudFront 요금 페이지에서 확인하세요.
Next step
콘텐츠 유형, 사용자 분포, 오리진 위치와 보안 요구사항을 정리해 오시면 캐시 정책과 오리진 보호 방식을 함께 검토합니다.