S3의 객체 암호화
2024. 4. 22. 14:32ㆍAWS Cloud Base
목차
- 개요
- SSE S3
- SSE KMS
- SSE Client
- Client Side
개요
- On Transit : SSL/TLS(HTTPS)
- At Rest(Server Side)
- SSE S3: S3에서 알아서 암호화
- SSE KMS: KMS 서비스를 이용해 암호화
- SSE C : 클라이언트에서 제공한 암호를 통해 암호화
- Client Side : 클라이언트가 직접 암호화(가장 안정적 but 귀찮음)
SSE S3
- 데이터 저장시 S3에서 관리키를 통해 데이터 암호화
- 데이터 가져올시 S3에서 관리키를 통해 데이터 복호화
- S3가 키도 알아서 관리해줌
SSE KMS
- 데이터 저장시 S3에서 KMS 서비스를 통해 나온 키로 데이터 암호화
- 데이터 가져올시 S3에서 KMS 서비스를 통해 나온 키로 데이터 복호화
- 즉, 키를 KMS 서버에서 관리를 함(SSE보다 훨씬 강력하며 안전)
- 키가 어떻게 로테이션되며, 관리되는지를 사용자가 직접 관리할 수 있기 때문
- 나아가 권한을 분리할 수 있음
- S3의 Full 권한이 생겨도, KMS에 대한 권한이 없으면 데이터를 읽을 수 없음
- 인프라 관리자, 파일 관리자 등에게 권한을 세분화시켜서 나눠주면, 그만큼 안전성이 올라감(역할 분담)
SSE Client
- 데이터 저장시 클라이언트 Key로 S3에서 데이터를 암호화하여 저장
- 데이터 가져올시 클라이언트 Key로 S3에서 데이터 복호화 후 가져옴
- 클라이언트 단에서 해당 Key를 관리해야되며, 잃어버리면 데이터를 못 불러옴
Client Side
- 데이터 저장시 클라이언트에서 클라이언트 Key로 암호화 후 S3에 전달하여 저장
- 데이터 가져올시 S3에서 가져온 뒤, 클라이언트에서 클라이언트 Key로 복호화후 읽음
- 클라이언트가 Key를 잃어버리면, 못 읽음
출처 : https://www.youtube.com/watch?v=tvnwOH7hP_8&list=PLfth0bK2MgIan-SzGpHIbfnCnjj583K2m&index=25
'AWS Cloud Base' 카테고리의 다른 글
AWS RDS (0) | 2024.08.13 |
---|---|
S3 정적 호스팅 (0) | 2024.04.22 |
S3 버전 관리 및 객체 잠금 (0) | 2024.04.20 |
S3 Bucket Policy (0) | 2024.04.20 |
S3 Class (0) | 2024.04.20 |