[리포트] Amazon S3의 데이터 보호를 재정의하는 3가지 혁신 #reinvent #PRT315

2023.02.28

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

안녕하세요, 임채정입니다.
지금 라스베가스에서는 11월 28일부터 12월 2일까지 re:invent를 진행했습니다.
해당 블로그는 「3 innovations that redefine data protection for Amazon S3 (sponsored by Clumio)」 세션을 정리한 리포트입니다.

아젠다

  1. 세션 개요
  2. S3 를 보호해야 되는 이유
  3. S3 삭제를 예방, 보호하기 위한 방법들
  4. 마무리

1. 세션 개요

개요

You rely on Amazon S3 to power your cloud-native applications, data lakes, analytics, and AI. While Amazon S3 is extremely durable, the resilience of the data itself is your responsibility. So how do you secure billions of objects from an ever-expanding list of potential threats? And how do you recover when your data is compromised? In this session, technologists from Amazon, Cox Automotive, and Clumio dive deep into Amazon S3 data protection and demonstrate how to swiftly recover petabytes of data in the event of an incident. Learn how to implement continuous immutable backup that is air-gapped and instantly recoverable. This presentation is brought to you by Clumio, an AWS Partner.

발표자

Mark Huber, Sr. Director, Engineering Enablement, Cox Automotive
Woon Jung, CTO & Co-Founder, Clumio
Peter Imming, Principal Product Manager, Amazon

발표 난이도

300 - Advanced

2. S3 데이터를 백업해야 되는 이유

2-1. S3에서 보호가 필요한 데이터

  • 어플리케이션 데이터
    • 사용자 생성 데이터
    • 근대화
    • 구성
  • 데이터 레이크
    • 비즈니스 앱 데이터
    • AI/ML 교육 데이터
    • 테스트/개발 데이터
  • 민감한 정보
    • 회사 기밀 정보
    • 지적 재산
    • PII
    • 자격 증명
  • 컴플라이언스 데이터
    • 건강 기록
    • 직원기록
    • 재무 기록

Amazon S3에는 다양한 데이터가 저장되어 있습니다.
그 중에는 기밀 정보나 개인정보 등의 유출되거나 삭제하면 안되는 중요한 정보들이 저장되어 있는 경우도 많습니다.
하지만 이러한 정보들이 삭제가 되면 어떻게 될까요.

2-2. 데이터를 백업해야 하는 이유

  • 우발적인 데이터 손실
    • 사람이 오류를 발생
    • 실수로 삭제 또는 덮어쓰기
    • 자연재해
  • 소프트웨어 오류
    • 응용 프로그램 데이터 삭제
    • 잘못 구성된 스크립트의 잘못된 삭제
    • 잘못 구성된 데이터 수명 주기 규칙
  • 악질 행위
    • 악의적인 삭제
    • 랜섬웨어 대량 재암호화 이벤트
    • 데이터 세트에 의도적인 장애 주입

S3에 존재하는 위험의 유형에는 여러가지가 있는데 데이터 삭제 요청은 API에 의해 일어나고 그 S3측에서는 요청의 의도가 무엇인지는 알 수 없습니다.
그렇기 때문에 S3에서는 삭제 API의 의도가 무엇이든지 요청을 실행시킵니다.
따라서 사람의 실수이든 자연 재해이든 데이터 분실의 위험은 어디에든지 존재합니다.
소프트웨어 오류일 수도 있고 악의를 가진 누군가가 삭제 요청을 할 수 도 있습니다.

이처럼 세션은 데이터의 삭제에 초점을 두고 이야기를 진행할 것입니다.

3. S3 삭제를 예방, 보호하기 위한 방법들

이제부터 S3의 잘못된 삭제에서 보호하기 위한 옵션을 설명합니다.

Amazon S3 다중 계층 데이터 보호 옵션
1) 사용자 액세스를 제한하는 IAM 정책
2) Amazon S3 버킷에서 Amazon S3 개체 버전 서명 사용
3) Amazon S3 객체 잠금을 사용하여 데이터를 변경할 수 없습니다(데이터 및 백업)
4) Amazon S3 Replication 사용, SLA 기반 복제 성능을 위해 복제 시간 제어와 함께 Amazon S3 Replication 사용
5) Amazon S3 Storage 렌즈: Amazon S3 Storage 렌즈를 사용하여 데이터 보호 설정 및 위험 수준에 대한 다중 계정 수준 보기를 얻을 수 있습니다
6) clumio와 같은 AWS 스토리지 Competency 파트너 솔루션을 사용하여 중앙 집중식 교차 계정 및 교차 지역 독립 amazon S3 백업 가능

1) 사용자 액세스를 제한하는 IAM 정책
IAM을 통해 권한이 부여되지 않으면 해당 데이터에 액세스할 수 없습니다.
하지만 적절한 권한이 부여된 사용자가 데이터에 액세스해서 실수로 삭제해버릴 수도 있습니다.
실수로 삭제하는 것과 악의적인 삭제는 결국 같습니다. 우리는 그 둘을 구분할 수 없습니다.

2) Amazon S3 버킷에서 Amazon S3 객체 버전 관리 사용
위의 1번에서 처럼 실수로 삭제하는 경우를 방지하기 위해서 S3의 버전 관리 기능을 사용할 수 있습니다.
버전 관리를 사용하고 있을 때는 실수로 객체를 삭제해도 해당 객체에 삭제 마커가 붙어 삭제되는걸 방지할 수 있습니다.
그렇기 때문에 AWS는 버전 관리 기능을 기본적으로 설정해두는 걸 추천합니다.

3) Amazon S3 객체 잠금을 사용하여 데이터를 변경할 수 없습니다(데이터 및 백업)
객체 잠금 기능을 사용하면 일정 기간을 설정하거나 무기한으로 설정한 객체의 삭제 또는 덮어쓰기를 방지할 수 있습니다.
객체 잠금 기능은 버킷 수준, 객체 수준으로 활성화할 수 있습니다.
해당 객체는 AWS 직원이나 루트 사용자가 와도 삭제할 수 없습니다.
이 것으로 악의적 공격자가 들어와 악의적으로 객체를 삭제하는 것도 방지할 수 있습니다.

4) Amazon S3 Replication (객체 복사) 사용, SLA 기반 복제 성능을 위해 복제 시간 제어와 함께 Amazon S3 Replication 사용
객체 복사 기능은 Amazon S3 버킷 전체에 걸쳐 객체를 비동기식으로 자동 복사할 수 있는 기능입니다.
삭제 문제를 예방하고 규정 준수를 위해 데이터를 사용하거나 복원력을 위해 다른 지역에서 데이터를 사용해야 하는 경우 S3 객체 복제가 필요합니다.
객체 복제를 위해 구성된 버킷은 동일한 AWS 계정 또는 다른 계정이 소유할 수 있습니다.

5) Amazon S3 Storage Lens: Amazon S3 Storage Lens를 사용하여 데이터 보호 설정 및 위험 수준에 대한 다중 계정 수준 보기를 얻을 수 있습니다
위의 1 ~ 4번은 S3에서 독립적으로 관리되는 것은 아닙니다.
객체 버전, 객체 잠금 및 복제의 세 가지 기능 모두 S3에서 사용해야 하는 옵션 기능이기 때문에 이 기능들은 S3 단위가 아니라 버킷 단위에서 활성화해서 사용하는 것입니다.
Amazon S3 Storage Lens 는 이와 달리 모든 기능을 한눈에 볼 수 있고 중앙에서 볼 수 있으며 기본적으로 몇 퍼센트의 데이터가 버전화되어 있는지 개체가 잠겨 있는 데이터의 비율은 얼마나 되는지 등을 확인할 수 있습니다.

6) clumio와 같은 AWS 스토리지 Competency 파트너 솔루션을 사용하여 중앙 집중식 교차 계정 및 교차 지역 독립 amazon S3 백업 가능

4. 마무리

  • 데이터 속도
    • 매초마다 생성되는 새 개체
    • 빠르게 변화하는 버킷은 지속적으로 재고 조사가 필요함
    • 변경사항, 버전, 메타데이터를 지속적으로 업데이트해야 함
  • 데이터 볼륨
    • 어떤 기업은 엑사바이트의 데이터를 보유하고 있습니다
    • 버킷당 수백억 개의 개체
  • 데이터 다양성
    • 다양한 라이프사이클 규칙
    • 다양한 변화율
    • 서로 다른 개체 유형

Amazon S3를 보호하는 것은 중요한 과제입니다.
사람들은 Amazon S3에 점점 많은 양의 객체를 저장하고 있고 저장되어 있는 객체의 계속해서 변경되어 있기 때문에 내구성이나 가용성 이외에도 삭제에 대한 예방, 보호가 중요합니다.
그렇기 때문에 위에서 설정한 다양한 S3의 기능을 사용해서 데이터를 보호해야 합니다.