1. 설정하는 이유
S3 내 컨텐츠를 특정 사이트에서만 서비스하려고 함
2. 방법
해당 S3 버킷의 [권한] -> [버킷 정책]에 정책을 설정한다.
{
"Version": "2012-10-17",
"Id": "http referer policy",
"Statement": [
{
"Sid": "Allow get requests originated from mydomain.com and www.mydomain.com",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::mybucket/*",
"Condition": {
"StringLike": {
"aws:Referer": [
"http://mydomain.com/*",
"http://www.mydomain.com/*"
]
}
}
}
]
}
3. 주의사항
이 정책을 IAM policy로 만들어 쓰려고 했을 때는 에러가 발생한다.
- 이 정책에 다음 오류가 포함되어 있습니다: Has prohibited field Id For more information about the IAM policy grammar, see AWS IAM Policies
- 이 정책에 다음 오류가 포함되어 있습니다: Has prohibited field Principal F* or more information about the IAM policy grammar, see AWS IAM Policies
* Principal: 정책을 적용할 대상이다. 위에서는 인터넷 전체에 공개할 것이므로 *이다.
