About/Cloud

[AWS] S3의 암호화

김징어 2022. 3. 23. 14:50

웹사이트의 경우 외부에 공개하는 정보가 아닌 이상 S3에 저장하는 데이터는 기본적으로 암호화할 필요가 있습니다. S3에 데이터를 저장할 때는 암호화 키를 이용할 수도 있고, Amazon의 암호화된 API 엔드포인트를 이용해 S3에서 다른 서비스 또는 리소스로 전송되는 데이터를 암호화할 수 있습니다.

서버측 암호화


https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/serv-side-encryption.html

 

서버 측 암호화를 사용하여 데이터 보호 - Amazon Simple Storage Service

서버 측 암호화를 사용하여 데이터 보호 서버 측 암호화는 데이터를 받는 애플리케이션 또는 서비스에 의해 해당 대상에서 데이터를 암호화하는 것입니다. Amazon S3에서 데이터 센터의 디스크에

docs.aws.amazon.com

서버 측 암호화는 데이터를 받는 애플리케이션 또는 서비스에 의해 해당 대상에서 데이터를 암호화하는 것입니다.

서버측 암호화는 S3 플랫폼 내에서 진행되며, 디스크에 저장될 때 데이터 객체를 암호화하고, 적절한 권한 증빙을 통해 데이터 인출을 요청할 때 복호화해 전송합니다.

사용자는 서버측 암호화의 세 가지 옵션 중 하나를 사용할 수 있습니다.

Amazon S3 관리형 키를 사용한 서버측 암호화(SSE-S3)

Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)를 사용하면 각 객체는 고유한 키로 암호화됩니다. 또한 추가 보안 조치로 주기적으로 교체되는 루트 키를 사용하여 키 자체를 암호화합니다. Amazon S3 서버 측 암호화는 가장 강력한 블록 암호 중 하나인 256비트 Advanced Encryption Standard(AES-256)를 사용하여 데이터를 암호화합니다.

AWS Key Management Service에 저장된 KMS 키를 사용한 서버 측 암호화(SSE-KMS) 

AWS KMS keys를 사용한 서버 측 암호화(SSE-KMS)는 SSE-S3와 유사하지만 이 서비스 사용 시 몇 가지 추가적인 이점이 있고 비용이 발생합니다.

Amazon S3의 객체에 대한 무단 액세스에 대응하여 추가적인 보호를 제공하는 -KMS 키를 사용하려면 별도의 권한이 필요합니다. SSE-KMS도 KMS 키가 사용된 때와 사용 주체를 표시하는 감사 추적 기능을 제공합니다. 또한 고객 관리형 키를 생성하고 관리하거나 사용자, 서비스 및 리전에 고유한 AWS 관리형 CMK를 사용할 수 있습니다.

고객 제공 키를 사용한 서버 측 암호화(SSE-C)

고객 제공 키를 사용한 서버 측 암호화(SSE-C)를 사용하면 사용자는 암호화 키를 관리하고 Amazon S3는 암호화(디스크에 쓸 때) 및 해독(객체에 액세스할 때)을 관리합니다.

클라이언트측 암호화


https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/UsingClientSideEncryption.html

 

클라이언트 측 암호화를 사용하여 데이터 보호 - Amazon Simple Storage Service

클라이언트 측 키와 암호화되지 않은 데이터는 AWS로 전송되지 않습니다. 따라서 암호화 키를 안전하게 관리하는 것이 중요합니다. 해당 키를 잃어버리면 데이터의 암호를 해독할 수 없습니다.

docs.aws.amazon.com

클라이언트 측 암호화는 데이터가 Amazon S3 서비스로 전달될 때 보안을 보장하기 위해 로컬에서 데이터를 암호화하는 작업입니다. Amazon S3 서비스는 암호화된 데이터를 수신하며 데이터를 암호화 또는 복호화하는 과정에 기여하지 않습니다.

AWS KMS의 Managed Customer Master Key(CMK)를 이용하면 S3에 전송하기 전 데이터를 암호화할 수 있으며, 데이터 객체 업로드 직전에 데이터 키를 생성합니다.

Amazon S3 암호화 클라이언트를 통해 Client-Side Master Key를 사용할 수 있습니다.

서버측 암호화는 클라이언트측 암호화에 비해 복잡성이 낮으며, 대다수 사용자가 선호하는 방법이지만, 기업 및 기관에 따라 암호화 키를 직접 생성 및 관리하려는 경우가 있으며, 이 때는 클라이언트 암호화를 사용해야 할 것입니다.


AWS S3의 암호화에 대하여 알아보았습니다.

참고사항

https://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9791161756103%E3%85%81 

 

교보문고

 

www.kyobobook.co.kr