정보보안 자격증/AWS

AWS5. S3 (Simple Stoarge Service) - 2

Rin.a.ya 2024. 7. 17. 15:34

1. 업로드 방법

  • Mgmt Console
    • 최대 160GB: 160GB를 초과하는 파일은 CLI, SDK, Rest API를 이용해야 함
  • CLI, SDK
    • 단일 작업으로는 최대 5GB 업로드
    • 5GB 이상은 멀티파트 업로드해야 함 -> 최대 5TB까지 (업로드 속도 개선, 재업로드 가능)
  • 멀티파트 업로드 장점
    • 개선된 처리량: 병렬
    • 문제발생 시 해당 파트만 재업로드
    • 대용량 객체 업로드: 최대 5TB
  • 전송 가속화: Transfer Acceleration
    • AWS의 글로벌 인프라인 에지 로케이션을 이용해 데이터를 S3로 빠르게 전송하는 방법
    • 글로벌 서비스를 할 때 유용함
  • S3로 대량의 데이터를 이동할 때
    • Snowcone
      • 8TB (디바이스당), 작은 용량 & 휴대가 간편 (2.1kg)
    • Snowball
      • Snowball Edge Compute Optimized
        • 저장소 + 전처리 (ML, 데이터분석 등): 42TB
      • Snowball Edge Storage Optimized
        • 대규모 데이터 마이그레이션, 반복 전송: 80TB
    • Snowmobile
      • 컨테이너 트레일러 트럭으로 견인
      • Snowmoblie 1대당 최대 100PB

2. S3 엑세스 제어

  • Default
    • 소유자만 액세스할 수 있음
    • 버킷을  생성했을 때의 기본설정
  • Public
    • 누구나 접근할 수 있음
    • 명시적으로 허용해야 함
  • S3 버킷 정책 지정
    • 액세스 정책을 직접 지정하는 방법
  • 퍼블릭 액세스 차단
    • 퍼블릭 액세스를 원천적으로 차단하고자 할 때 지정함
  • CORS 정책
    • SOP (Same Origin Policy)란?
      • 웹 브라우저에서 same origin과의 통신만을 허용하는 브라우저 보안 정책
    • CORS란?
      • Cross Origin에서의 HTTP 통신을 허용하도록 하기 위한 방법
      • Access-Control-Allow-Origin 헤더와 같은 HTTP 헤더를 이용
    • S3 버킷이 제공하는 콘텐츠를 다른 정적 웹사이트가 로드할 수 있도록 하려면
      • S3 버킷에 정적 웹사이트를 지정해 CORS 정책을 지정해야 함
  • S3 액세스 포인트
    • 버킷에 대해 수백개의 액세스 포인트 생성할 수 있음
    • 액세스 포인트마다 개별적인 접근제어 정책을 지정할 수 있음
    • 사용자마다 애플리케이션마다 -> 정책의 허점을 예방할 수 있음 -> 관리가 용이해짐
  • S3 엑세스 제어
    • 미리 서명된 URL (Pre-signed URL)
      • 프라이빗한 객채에 대해 일시적으로 짧은 기간 동안만 액세스 할 수 있도록 하고자 할 때 사용
      • 사용예: 모바일 앱에서 제한된 객체를 다운로드받을 수 있도록 할 때
      • CLI, SDK를 이용해 생성할 수 있음

3. 암호화 (서버, 애플리케이션)

  • 서버측 암호화
    • SSE-S3
      • S3 관리형 키를 이용한 서버 측 암호화 -> 암호화키를 S3가 관리함
      • AES-256을 사용해 암호화함
    • SSE-KMS
      • KMS (Key Management Service)가 암호화 키를 관리함
      • 여러 리전에 걸쳐서 S3 데이터를 이동해야 할 일이 있으면 SSE, KMS를 사용해야 
    • SSE-C
      • 클라이언트로부터 전달된 암호화키를 이용해 데이터를 암호화함
      • 암호화 키를 고객이 관
      • 암호화키가 데이터와 함께 전달되므로 전송암호화가 반드시 필요
  • 클라이언트 측 암호화
    • 클리아언트 측에서 암호화를 하여 S3로 전송함
    • 암호화키가 AWS 측으로 전송되지 않음
      • 암호화키, 키의 수명주기 관리를 모두 클라이언트가 해야 함

4. S3 객체 복제

  • 복제 방법
    • 교차로전복제 (CRR)과 동일리전 복제 (SRR): 새로 업로드된 객체를 복제함
      • 버전 관리가 활성화되어 있어야 함
    • S3 배치 복제: 기존 객체를 복제함
  • 복제 목적: 데이터 중복성, 사본 유지

5. S3 이벤트 알림

  • 이벤트 알림이란?
    • 버킷에서 특정 이벤트가 발생할 때 알림을 받을 수 있는 기능
    • 지정 가능한 대상: 람다 함수, SNS 주제, SQS 대기열
    • application -> put object -> S3 bucket -> trigger -> Lambda function

6. S3 비용

  • 비용은 크게 두 가지: 저장비용, 요청비용
  • 비용 지불 요소
    • 월별 사용 GB
    • 다른 리전 또는 인터넷으로 전송
    • PUT, COPY, POST, LIST, GET 요청
  • 비용 미지불 요소
    • S3가 데이터를 수신
    • 동일 리전 내 EC2, CloudFront로 전송

7. 사용 사례

  • 정적 웹사이트 
  • 정적 콘텐츠와 미디어 저장 및 배포 (WORM)
  • 빅 데이터 분석을 위한 데이터 저장소 (Data Lake)
    • Apache Parquet, CSV 형식으로 저장
    • Athena와 같은 도구를 이용해 분석
  • 백업 저장소
    • EBS의 스냅숏
    • OnPremise 서버의 백업을 저장할 수 있음
    • 장기 아카이브는 S3 Glacier

'정보보안 자격증 > AWS' 카테고리의 다른 글

AWS7. VPC & AWS Networking  (1) 2024.07.17
AWS6. EFS, FsX  (0) 2024.07.17
AWS4. S3 (Simple Stoarge Service) - 1  (1) 2024.07.17
AWS3. 공유 스토리지  (0) 2024.07.17
AWS2. 핵심정리 2  (0) 2024.07.17