AWS(Amazon Web Service)

[AWS] Amazon S3 - Default Encryption vs Bucket Policies

yunseohhe 2024. 11. 6. 09:14

Default Encryption(기본값 암호화) vs Bucket Policies(버킷 정책)

  • 모든 버킷은 SSE-SE 암호화가 되어 있다.
      - 즉, 버킷에 저장된 새로운 객체에 SSE-S3 암호화가 자동으로 적용된다.
      - 하지만 SSE-KMS 같은 다른 기본 암호화로 변경할 수 있다.
  • 버킷 정책을 이용해서 암호화를 강제하고 올바른 암호화 헤더가 없는 경우에는 S3 객체를 PUT하는 API 호출을 거절 할 수 있다.
      - 예를 들어, SSE-KMS나 SSE-C에 대해 적용할 수 있다.

  • 위의 이미지는 우리가 사용할 수 있는 버킷 정책의 예이다.
  • 위의 경우에는 PutObject를 하려고 하는데 aws:kms라는 암호화 헤더가 없으면 그 요청을 거부하라고 하고 있다. 또 오른쪽에서는 이걸 업로드하고 있는데 고객 측 알고리즘 즉, SSE-C가 없으면 그 객체를 거부하라고 하고 있다.
  • 위에는 그냥 예시이고, 적어도 우리는 버킷 정책으로도 버킷 안의 암호화를 강제할 수 있다는 것을 알고 가면 좋다!

 

 버킷 정책은 기본 암호화 설정 이전에 먼저 평가가 되기 때문에, 기본값 암호화는 기본값으로서 SSE-S3로 제공되는데 우린 그걸 변경할 수 있다. 버킷 정책을 선제적으로 적용해서 우리가 원하는 암호화를 강제할 수 있다는 점을 기억하면 좋다!!