S3 Bucket Policy
2024. 4. 20. 21:21ㆍAWS Cloud Base
목차
- 사전 지식
- 권한 검사 과정
- S3 Bucket Policy
- S3 계층 구조
- S3 버킷 관리 방법의 선택
사전 지식
Identity-based policies(자격 증명 기반 정책)
- 자격증명(IAM 유저, 그룹, 역할)에 부여하는 정책
- 해당 자격 증명이 무엇을 할 수 있는지 허용
Resource-based policies(리소스 기반 정책)
- 리소스(예: S3, SQS, VPC Endpoint, KMS 등)에 부여하는 정책
- 해당 리소스에 누가 무엇을 할 수 있는지 허용 가능
- 예: SQS 대기열에 Lambda Service가 접근 가능
권한 검사 과정
- 리소스 정책 허용이면 밑에는 검사하지 않고 바로 권한 허용
- 몇 가지 예외는 있음(예: KMS 같은 경우, 리소스 정책 허용 되도, User가 따로 권한이 있어야함)
S3 Bucket Policy
- 버킷 단위로 부여되는 리소스 기반 정책
- 해당 버킷이 데이터에 "누가 언제 어디서 무엇을 어떻게" 할 수 있는지 정의 가능
- 리소스 계층 구조에 따라 권한 조절 가능
- 예: resource : "arn:aws:s3:::my-bucket/images/*" -> my-bucket의 images/로 시작하는 모든 객체에 대하여 적용 가능
- 다른 계정에 엔티티에 대한 권한 설정 가능
- 익명 사용자에 대한 권한 설정 가능
- 리소스 계층 구조에 따라 권한 조절 가능
- 기본적으로 모든 버킷은 Private => 접근 불가능
- Public Access Deny을 풀어야 접근 가능(안하면, 따로 허용 정책 넣어도 해당 정책이 1차적으로 막아서 접근 불가)
S3 계층 구조
- aws 콘솔에서는 S3의 디렉토리를 생성 가능하고 확인 가능
- S3 내부적으로는 계층구조가 존재x
- 키 이름에 포함된 "/"로 계층 구조를 표현
- 예: s3://mybucket/world/southkorea/seoul/guro/map.json
- 버킷명: mybucket
- 키: world/southkorea/seoul/guro/map.json(단일 스트림)
S3 버킷 관리 방법의 선택
- Identity-based policies(자격 증명 기반 정책)
- 같은 계정의 IAM 엔티티의 S3 권한 관리를 해야할 때
- S3 이외에 다른 AWS 서비스와 같이 권한 관리할 때
- Resource-based policies(리소스 기반 정책)
- 익명 사용자 혹은 다른 계정의 엔티티의 S3 이용 권한을 관리할 때
- S3만의 권한을 관리할 때
출처: https://www.youtube.com/watch?v=Qysb_jLx8K8&list=PLfth0bK2MgIan-SzGpHIbfnCnjj583K2m&index=23
'AWS Cloud Base' 카테고리의 다른 글
S3의 객체 암호화 (0) | 2024.04.22 |
---|---|
S3 버전 관리 및 객체 잠금 (0) | 2024.04.20 |
S3 Class (0) | 2024.04.20 |
S3 개요 (0) | 2024.04.13 |
VPC 정의 및 특징 그리고 구성요소 (0) | 2024.04.10 |