[reinvent 2025] Amazon S3 보안 및 액세스 제어 모범 사례

Summary

본 세션에서는 데이터 보안 전략 수립을 위해 Amazon S3를 기반으로 한 스토리지 보안 및 세부 접근 제어 방안을 소개합니다. S3의 접근 제어, 암호화 , 태그 기반 제어 등 최신 기능과 사용성 향상 내용을 다루며 실무에서 활용 가능한 데이터 보안 및 접근 관리 모범 사례를 제공합니다.

리인벤트 2025 테크 블로그의 더 많은 글이 보고 싶다면?

AWS re:Invent 2025 Tech Blog written by MegazoneCloud

Overview

  • Title: Amazon S3 security and access control best practices
  • Date:  2025년 12월 2일 (화)
  • Venue:  Mandalay Bay | Lower Level North | Islander F
  • Speaker:
  • Bryant Cutler
  • Akshat Sandh
  • Industry: Cross-Industry Solutions, Software and Internet

들어가며

이 세션에서는 AWS가 제공하는 최신 보안 기능과 모범 사례를 통해 퍼블릭 액세스 차단, 버킷 단위 암호화, Access Points와 Access Grants, ABAC 기반 태그 정책 등 다양한 전략을 실무에 적용하는 방법을 논의합니다. 주요 주제는 대규모 환경에서도 안정성과 효율성을 유지하면서 데이터 보안을 높이는 데 초점을 맞추고 있습니다.


이번 세션을 통해  S3 데이터를 안전하게 운영하고, 정책 변경과 조직 단위 접근 관리, 태그 기반 권한 분리 등 실질적인 워크플로우를 개선할 수 있는 구체적인 전략과 AWS 도구 활용법에 대한 방법을 알 수 있을 것 입니다.

Block public access to your data

S3 Block Public Access는 데이터가 의도치 않게 인터넷에 노출되는 것을 막아주는 가장 기본적이고 강력한 기능입니다. Public Access Block을 통해 S3 데이터를 실수로 공개하지 않도록 기본적으로 활성화되며 다른 S3 관련 리소스 생성시에도 이 보안설정이 자동으로 적용됩니다. 공개 접근이 필요한 정적 웹사이트 호스팅 환경에서도 안전하게 운영할 수 있습니다.

Enable bucket-level encryption keys 

S3에서는 보안을 훼손하지 않으면서 효율적으로 데이터를 운영할 수 있도록 버킷 수준의 키를  제공합니다. 수백만, 수십억 개 객체가 저장된 환경에서는 KMS 요청 비용이 급격히 늘어날 수 있습니다. Bucket  키를 사용하면 중간 키를 활용하여 객체 암호화에 사용되는 데이터 키를 KMS로 복호화할 수 있으며, 규정 준수가 필요한 경우 KMS 접근을 백업으로 활용할 수 있습니다. 일반적인 경우, 정책에 버튼 하나만 추가해도 KMS 요청 비용을 크게 줄일 수 있으며, 신규 객체에는 자동으로 적용됩니다.

Divide and conquer to scale up

1. S3 Access points

대규모 환경에서 수백만 명의 사용자와 수천 개 애플리케이션을 관리하려면 접근을 효율적으로 확장해야 합니다. S3 Access Points는 사용하는 케이스별로 엔드포인트를 버킷 앞에 배치하여, 하나의 버킷을 여러 Access Point로 나눠 운영할 수 있게 해줍니다.

각 Access Point는 별도의 접근 제어 정책을 가지므로, 공유 리소스를 독립적으로 활용할 수 있습니다. 이를 통해 버킷과 스토리지 접근을 분리하고, 조직적으로 확장할 수 있습니다.

2. S3 Access Grants

모든 파일과 사용자를 Access Point에 연결했다면, S3 Access Grants를 활용할 수 있습니다. Access Grants를 통해 권한 목록을 저장하고 쉽게 추가하거나 제거할 수 있습니다. 예를 들어 Finance 그룹과 IdP 그룹을 연결하면, Finance 팀에 합류한 사람은 자동으로 접근할 수 있습니다. 동시에 개별 그룹이 자산을 생성하거나 새 권한을 추가하는 것을 방해하지 않습니다. 이는 S3 기반 File Browser 제품의 핵심 기능이기도 합니다.

3. ABAC: Attribute-Based Access Control

또 다른 권한 분리 방법은 ABAC, 태그 기반 접근 제어 입니다. ABAC는 사용자 이름이 아닌, 사용자와 리소스의 메타데이터를 기반으로 접근을 결정합니다. 예를 들어 Accounting 팀의 Bob이 Accounting 태그가 있는 버킷에 접근할 수 있도록 정책을 작성할 수 있습니다. 정책과 태깅 권한을 분리함으로써 의미 있는 정책을 만들 수 있습니다. 최근 S3에 ABAC 지원이 강화되어, 리소스 생성 시 태그를 지정하는 권한을 활용해 태그 기반 정책을 바로 적용할 수 있습니다.

*ABAC : AWS는 최근 S3에 태그 기반 리소스 정책(tag-based resource policies) 기능을 추가했습니다. 이제 S3 버킷, 객체, 관련 리소스에 태그를 지정하고, 해당 태그에 적용되는 정책을 작성할 수 있습니다. 이는 기존에 비용 할당(cost allocation) 용도로 사용하던 태그와도 호환되며, 대규모 환경에서 리소스를 보다 효율적이고 일관성 있게 관리할 수 있도록 합니다.

Test your security changes on a model

개발 과정에서 가장 흔한 문제는 버킷 정책 변경으로 애플리케이션이 다운되는 경우입니다. 정책 변경을 적용하기 전에 반드시 실제 프로덕션 환경과 동일하게 구성된 환경에서 테스트하는 것이 중요합니다. 동일한 버킷, 복제 설정, 라이프사이클 규칙, 배포 환경을 사용하고, 정책 적용 전에는 긍정 케이스와 부정 케이스 모두를 테스트해야 합니다. 이렇게 하면 서비스 신뢰성을 확보하고, 정책 변경으로 인한 장애나 오류를 방지할 수 있습니다.

Simplify security with AWS Organizations

AWS Organizations를 활용하면 멀티 계정 환경에서 조직 단위 단위로 정책을 적용할 수 있으며, 중앙에서 정책을 관리할 수 있습니다.  각 OU에는 Service Control Policy(SCP)가 적용되며, 해당 OU의 모든 계정 리소스에 영향을 미칩니다. S3는 최근 더 세분화된 오류 메시지를 제공하며, OU 단위에서 Block Public Access 설정도 가능합니다. 이는 미디어 및 보안 관리의 핵심 기능입니다.

결론

이번 세션을 통해 S3에서 데이터를 안전하게 관리하기 위한 다양한 전략과 최신 기능을 한눈에 살펴볼 수 있었습니다. 퍼블릭 액세스 차단으로 외부 노출을 방지하고, 버킷 단위 암호화와 KMS를 통해 효율적으로 데이터를 보호하는 방법과 최신 기능인  태그 기반 태그 정책을 활용해 조직별 접근을 세밀하게 관리할 수 있다는 점을 알 수 있었습니다. 또한 정책 변경 전 테스트와 AWS Organizations를 통한 중앙 관리로, 대규모 환경에서도 안정성과 보안을 동시에 확보할 수 있다는 점을 확인할 수 있었습니다.
글 │메가존클라우드, AIR Unit, AIR Innovation Team, 송현진 Manager

게시물 주소가 복사되었습니다.