S3에 올라간 객체를 특정 도메인에서만 접근할 수 있도록 설정한다.
✔️Resource의 [bucket-name]부분에 꼭 해당 버킷 명으로 변경할 것
✔️Referer를 하나만 적을 경우 []배열 지워줄 것
✔️Effect 허용에 대한 설정이므로 Allow
✔️Principal은 정책을 적용할 대상. 모두 공개로 설정(*)
✔️파일을 보여줄 때의 상황이므로 Action은 GetObject가 됨
✔️Condition은 조건절을 설정하는 곳. StringLike는 문자열을 포함한다는 뜻으로 aws:Referer를 통해 도메인을 설정한다
{
"Version": "2012-10-17",
"Id": "http referer policy",
"Statement": [
{
"Sid": "Allow get request originated from ~",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::[bucket-name]/*",
"Condition": {
"StringLike": {
"aws:Referer": [
"https://example.com/*",
"https://www.example.com/*"
]
}
}
}
]
}
설정 이후 객체의 URL을 눌렀을 때 Access Denied이 뜨면 설정이 잘 된 것이다!
CloudFront에서 위에서 설정한 S3 버킷을 오리진으로 사용하고 있기 때문에, CloudFront측에도 설정이 필요하다.
Cache Based on Selected Request Headers에서 Whitelist를 선택 (Referer에 대한 설정을 하기 위해)
'STUDY > AWS' 카테고리의 다른 글
AWS | EC2 EBS 볼륨 확장하기 (Linux | Ubuntu) (0) | 2021.01.21 |
---|---|
AWS | EC2에 톰캣(Tomcat) 설치 및 환경변수 설정 (3) | 2020.08.18 |
AWS | EC2에 JAVA설치 및 환경변수 설정 (1) | 2020.08.17 |
AWS | EC2 인스턴스 접속 ( + PuTTY | Window에서 Linux ) (0) | 2020.08.14 |
AWS | EC2 인스턴스 생성하기 (0) | 2020.08.13 |