일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- shared lock
- 백트래킹
- 스토어드 프로시저
- 일대다
- 낙관적락
- fetch
- querydsl
- eager
- 동적sql
- FetchType
- JPQL
- dfs
- 다대다
- 지연로딩
- 이진탐색
- 유니크제약조건
- BOJ
- PS
- SQL프로그래밍
- 연결리스트
- 힙
- 다대일
- 연관관계
- 데코레이터
- 즉시로딩
- 스프링 폼
- exclusive lock
- execute
- 비관적락
- CHECK OPTION
- Today
- Total
흰 스타렉스에서 내가 내리지
Amazon S3 권한 관리 본문
aws S3 권한을 관리하는 방법은 크게 두 가지가 있다.
- Identity-based policied (자격 증명 기반 정책)
- 자격증명 (IAM유저, 그룹, 역할)에 부여하는 정책
- 해당 자격증명이 무엇을 할 수 있는지 허용
- Resource-based policies (리소스 기반 정책)
- 리소스 (예: S3, SQS, VPC Endpoint, KMS 등)에 부여하는 정책
- 해당 리소스에 누가 무엇을 할 수 있는지 허용 가능
- 예 : SQS 대기열에 Lambda Service가 접근 가능
# 1. S3 버킷 정책
- 버킷 단위로 부여되는 리소스 기반 정책
- 해당 버킷의 데이터에 "언제 어디서 누가 어떻게 무엇을" 할 수 있는지 정의 가능
- 리소스의 계층 구조에 따라 권한 조절 가능
- 예 : resource : "arn:aws:s3:::my-bucket/images/*" → my-bucket의 images/로 시작하는 모든 객체에 대해서 ...
- 다른 계정의 엔티티에 대해서 권한 설정 가능
- 익명 사용자에 대한 권한 설정 가능 (public)
- 기본적으로 모든 버킷은 private → 접근 불가능
# S3의 계층 구조
- AWS 콘솔에서는 S3의 디렉토리(폴더)를 생성 가능하고 확인 가능
- S3 내부적으로는 계층구조가 존재하지 않음
- 키 이름에 포함된 "/" 로 계층 구조를 표현
- 예 :
- s3://mybucket/world/korea/seoul/guro/map.json
- 버킷명 : mybucket
- 키 : world/korea/seoul/guro/map.json (단일 스트링)
Effect : Allow or Deny
Principal : 누가. 위 사진에서는 와일드카드라서 아무나
Action : get 할수 있음
Resource : 어떤 객체에 대해서?
위와 같이 불특정 다수에게 공개하는 정책을 적용하기 위해서는 퍼블릭 액세스 차단을 해제해야 한다.
이거 해제하지 않으면 버킷정책을 가지고 있다고 하더라도 퍼블릭 액세스 차단이 먼저 적용되기 때문에 아무도 그 버킷에 접근할 수 없다.
# S3 버킷 관리 방법의 선택
> Identity-based policies (자격 증명 기반 정책)
- 같은 계정의 IAM 엔티티의 S3 권한 관리할 때
- S3 이외에 다른 AWS 서비스와 같이 권한 관리할 때
> Resource-based policied (리소스 기반 정책)
- 익명 사용자 혹은 다른 계정의 엔티티의 S3 이용 권한을 관리할 때
- S3 만의 권한을 관리할 때
# 2. S3 Access Control List (ACL)
> S3 Access Control List (ACl)
- 버킷 혹은 객체 단위로 읽기, 쓰기의 권한을 부여
- S3에서 설정을 통해 ACL를 활성화 시킨 후에 적용 가능
- 파일 업로드 시 설정 가능
- 간단하고 단순한 권한 관리만 가능
- 점점 사용하지 않는 추세
- 버킷 정책으로 이제 다 할 수 있으니까 AWS에서도 더 이상 권장하지 않음
'AWS' 카테고리의 다른 글
디커플링, SQS, SNS (0) | 2023.09.20 |
---|---|
S3 정적 호스팅 (0) | 2023.09.18 |
Elastic Load Balancer (ELB) (0) | 2023.09.11 |
EC2 Autoscaling(오토스케일링) (0) | 2023.09.11 |
EBS, Snapshot, AMI- (0) | 2023.09.02 |