12

ペーパークリップのテキストファイルを添付しています(Rails内)。

私のバケットポリシーは次のとおりです。

{
    "Version": "2008-10-17",
    "Id": "Policy123",
    "Statement": [
        {
            "Sid": "Stmt123",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "s3:GetObjectVersion",
                "s3:DeleteObject",
                "s3:DeleteObjectVersion",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::my_bucket/*"
        }
    ]
}

これらのアクションへのアクセスを制限して、要求が私のWebサイトからのものである場合にのみ許可したいと思います。これを次のように更新するだけの場合ですか: "Principal":{"AWS": "mywebsite.com"}?

4

2 に答える 2

16

S3ドキュメントでいくつかの例を確認できます

Web サイトからのアクセスを制限するには、 Referrerの条件を使用できます。

{
  "Version":"2008-10-17",
  "Id":"http referer policy example",
  "Statement":[
    {
      "Sid":"Allow get requests referred by www.mysite.com and mysite.com",
      "Effect":"Allow",
      "Principal":"*",
      "Action":"s3:GetObject",
      "Resource":"arn:aws:s3:::example-bucket/*",
      "Condition":{
        "StringLike":{
          "aws:Referer":[
            " http://www.mysite.com/*",
            " http://mysite.com/*"
          ]
        }
      }
    }
  ]
}
于 2012-11-29T13:20:50.253 に答える