S3의 객체 암호화
- S3의 데이터의 암호화는 3가지 암호화로 구성
- On Transit: SSL/TLS(HTTS)
- At Rest(Server Side)
- SSE S3: S3에서 알아서 암호화
- SSE KMS: KMS 서비스를 이용해 암호화
- SSE C: 클라이언트에서 제공한 암호를 통해 암호화
- Client Side: 클라이언트가 직접 암호화
Server Side
On Transit: HTTPS로 클라이언트가 데이터를 올림
암호화: Server Side
SSE - S3
SSE - KMS
- KMS 서비스를 사용하고 있기 때문에, Encryption 키가 어떻게 로테이션 되는지, 어떻게 관리되는지를 사용자가 직접 정할 수 있다.
- 권한을 분리할 수 있다.
SSE - Client
키는 클라이언트가 올린 클라이언트 키를 사용한다. 즉 내가 키를 직접 올리고, 보관해야한다.
Client Side 암호화
AWS 내에서 암호화되는 것이 아닌, 클라이언트가 클라이언트 키를 사용하여 직접 암호화를 한 뒤에 S3에 업로드한다.