본문 바로가기

자격증/AWS Certified Security - Specialty

[AWS SCS] CloudFront - Origin Access Control and Origin Access Identity (OAC & OAI)

728x90
반응형

Origin Access Control(OAC)와 SSE-KMS 보안 S3 버킷 통합

AWS CloudFront의 **Origin Access Control(OAC)**는 S3 버킷과의 통합을 더욱 간소화하고 보안을 강화하는 최신 기술입니다. 특히 **KMS(Key Management Service)**로 서버 측 암호화(SSE-KMS)를 사용하는 S3 버킷에 대해 OAC를 활용하면 Lambda@Edge와 같은 추가 구성 없이 간편하게 설정할 수 있습니다. 이번 글에서는 OAC와 SSE-KMS의 통합 과정을 살펴보겠습니다.


OAC의 장점

  • SSE-KMS 지원
    OAC는 모든 요청을 Sigv4 서명을 통해 처리하므로 SSE-KMS를 네이티브로 지원합니다.
  • 간편한 설정
    KMS 키 정책에 OAC의 SourceARN을 추가하는 것으로 S3 버킷과의 통신이 가능해집니다.
  • Lambda@Edge 불필요
    이전의 **Origin Access Identity(OAI)**에서는 SSE-KMS를 지원하지 않아 Lambda@Edge를 사용해야 했습니다. OAC를 활용하면 이러한 추가 작업 없이도 SSE-KMS와 통합이 가능합니다.

OAC와 SSE-KMS 통합 과정

  1. KMS 키 정책 수정
    • KMS 콘솔에서 해당 키의 정책을 열고, OAC의 SourceARN을 조건으로 추가합니다.
    • OAC가 암호화 및 복호화 작업과 키 생성 작업을 수행할 수 있도록 허용합니다.
  2. CloudFront와 S3 버킷 연결
    • OAC를 통해 CloudFront가 SSE-KMS가 적용된 S3 버킷에 안전하게 접근할 수 있습니다.
  3. Lambda@Edge 제거
    • OAI에서는 Lambda@Edge로 요청을 서명해야 했으나, OAC에서는 이 과정이 불필요합니다.
    • OAC는 SSE-S3와 SSE-KMS를 모두 지원하며, 아키텍처를 단순화합니다.

OAC와 OAI 비교

SSE-KMS 지원 네이티브 지원 지원하지 않음
Lambda@Edge 필요성 불필요 필요
설정 편의성 KMS 키 정책에 SourceARN 추가로 간단 복잡한 설정 필요

 


아키텍처 비교

1. OAI와 Lambda@Edge를 활용한 이전 아키텍처

  • 구성 요소:
    • 사용자 → CloudFront → Lambda@Edge → S3 버킷 (SSE-KMS 적용)
  • 문제점:
    • Lambda@Edge를 통해 Sigv4 서명을 추가해야 했으며, 복잡하고 비효율적.

2. OAC를 활용한 개선된 아키텍처

  • 구성 요소:
    • 사용자 → CloudFront (OAC) → S3 버킷 (SSE-KMS 적용)
  • 장점:
    • Lambda@Edge가 필요 없어 설정이 간단하고 성능 최적화.

결론

Origin Access Control(OAC)은 SSE-KMS 보안 S3 버킷과의 통합을 단순화하고 Lambda@Edge를 제거해 효율성을 높이는 솔루션입니다. 이제 AWS CloudFront를 사용할 때 OAC를 적용하여 더 안전하고 간편하게 S3 버킷의 데이터를 보호하고 전달할 수 있습니다.

728x90
반응형