2012-10-26 9 views
6

私はクリップのテキストファイルの添付ファイルを(Railsで)持っています。AWS S3バケットポリシー - 私のウェブサイトからのアクセスのみを許可する方法は?

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

{ 
    "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/*" 
     } 
    ] 
} 

私は要求が私のウェブサイトから来ている場合にのみ許可されるように、これらのアクションへのアクセスを制限したいです。これを単に「プリンシパル」:{"AWS": "mywebsite.com"}に更新するケースですか?

答えて

7

あなたはリファラー上の条件を使用することができ、あなたのウェブサイトからのアクセスを制限するにはS3 Documentations

でいくつかの例を確認することができます。

{ 
    "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/*" 
      ] 
     } 
     } 
    } 
    ] 
} 
+0

これは私が、残念ながら私のサイトからファイルを開く防止 – rigyt

+0

あなたが正しいと綴り込んでいることを確認してください:aws:Referer- HTTP refererフィールドと同じです。サイトのURLが適切な形式で送信されていることも確認してください。条件を削除し、画像のヘッダーを確認します。 – Guy

+0

サイトURLの送信形式を確認するにはどうすればよいですか?私は参照元を:-( – rigyt

関連する問題