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: 정책을 적용할 대상이다. 위에서는 인터넷 전체에 공개할 것이므로 *이다.