자격증/SAA-C03
[SAA-C03] Amazon S3 - 고급
jwlish
2023. 8. 31. 09:29
반응형
Amazon S3
S3 수명 주기 규칙
- 전환 작업 - 예로 객체 생성 60일 후에 Standard-IA 로 이동하거나 6개월 후에 Glacier에 아카이빙 되도록 설정
- 만료 작업 - 예로 365일 후에 액세스 로그 파일 삭제하거나 버저닝 활성화한 경우 이전 버전 파일을 삭제하도록 설정
- 규칙에는 특정 접두사를 사용하여 전체 버킷이나 버킷 일부 경로에만 적용 가능하고 특정 객체 태그에만 지정도 가능
S3 요청자 지불
- 일반적으로 버킷 소유자가 버킷과 관련된 모든 S3 스토리지 및 데이터 전송 비용을 지불
- 요청자 지불 버킷을 활성화 하여 버킷 소유자가 아닌 요청자가 객체 데이터 다운로드 비용을 지불하는 기능
- 요청자는 AWS에서 인증을 받아야 함
S3 기능
- 멀티파트 업로드
- 100MB 가 넘는 파일은 멀티파트 업로드를 사용하는 것이 좋고 5GB가 넘는 파일은 반드시 사용
- 업로드를 병렬화하므로 전송 속도를 높여 대역폭을 최대화할 수 있음
- 전송 속도 가속화
- 한국 리전에서 미국 리전으로 업로드한다는 가정하에 엣지 로케이션을 이용하여 전송 속도를 높이는 방법
- 퍼블릭 인터넷의 사용량을 최소화하고 프라이빗 네트워크의 사용량을 최대화
- 바이트 범위 가져오기
- 파일을 특정 바이트 범위로 병렬화하여 다운로드 하는 방법으로 다운로드 속도를 높일 수 있음
- 헤더 부분을 제외하고 해당 정보 빠르게 수신
S3 객체 암호화
- 서버 측 암호화 (Server Side Encryption)
- SSE-S3 - AWS에서 처리, 관리 및 소유하는 키로 암호화를 진행, AES-256 보안 유형
- SSE-KMS - KMS로 자신의 키를 직접 관리하는 방식으로 SSE-S3와 달리 사용자가 제어 가능
- SSE-C - 고객이 제공하는 키를 사용하는 서버 측 암호화
- 사용자 측 암호화 (Client Side Encryption)
- 데이터를 클라이언트가 직접 암호화해서 업로드하고 다운로드도 다운로드 후 직접 복호화
- 클라이언트가 전적으로 키와 암호화 주기를 관리
- 전송 중 암호화 (SSL / TLS)
S3 CORS
- Cross Origin Resource Sharing
- 오리진 = 프로토콜 + 도메인 + 포트 번호
- 웹 브라우저 기반 보안 메커니즘으로 메인 오리진을 방문하는 동안 다른 오리진에 대한 요청을 허용하거나 거부
- S3 버킷에서 교차 오리진 요청을 하면 정확한 CORS 헤더를 활성화해야 함
S3 - MFA 삭제
- MFA - 멀티 팩터 인증을 의미
- 버킷 버전 관리가 활성화 되어 있고, 버킷에 MFA 삭제가 활성화가 되어 있으면 삭제 시 MFA 인증 필요
- AWS CLI를 사용해 직접 활성화 및 비활성화해야 함
- 특정 객체 버전의 영구 삭제를 방지하는 역할
S3 - 액세스 로그
- 감사 목적으로 S3 버킷에 대한 모든 액세스를 기록할 수 있음
- Amazon Athena 같은 데이터 분석 도구로 분석
- 절대로 로깅 버킷과 모니터링하는 버킷을 동일하게 설정하지 말 것
S3 - 미리 서명된 URL
- S3 콘솔, CLI, SDK를 사용하여 생성할 수 있는 URL
- S3 콘솔 사용 시 최대 12시간, CLI 사용 시 최대 168시간의 만료 기한
- 프라이빗 버킷의 소유자가 미리 서명된 URL을 생성하여 다른 사용자에게 URL을 보내서 버킷에 접근하는 방식
- 특정 파일에 임시로 액세스 할 때 사용
S3 - 객체 잠금
- WORM (Write Once Read Many)
- 객체 잠금 사용 시 특정 객체 버전이 특정 시간 동안 삭제되는 것을 차단
- 규정 준수 모드 - 사용자를 포함한 그 누구도 객체 버전을 덮어쓰거나 삭제할 수 없음
- 거버넌스 보존 모드 - 관리자와 일부 사용자에게 IAM을 통해 부여받은 권한으로 삭제 가능
- 보존 기간을 설정하여 객체를 보호하고 원하는 만큼 기간 연장 가능
반응형