2012-10-26 12 views
6

Ich habe eine Büroklammer Textdatei Anlage (in Rails).AWS S3-Bucket-Richtlinie - Wie kann ich den Zugriff nur von meiner Website aus ermöglichen?

Meine Eimer Politik ist:

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

ich Zugriff auf diese Aktionen beschränken wollen nur dann erlaubt, wenn die Anfrage von meiner Website kommt. Ist es einfach eine Aktualisierung auf "Principal": {"AWS": "mywebsite.com"}?

Antwort

7

können Sie einige Beispiele überprüfen in S3 Documentations

Um den Zugriff von Ihrer Website zu beschränken, können Sie die Bedingung auf Referrer- verwenden:

{ 
    "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

Dies verhindert, dass mir die Dateien von meiner Seite öffnen leider – rigyt

+0

Überprüfen Sie, ob Sie es richtig geschrieben haben: aws: Referer - Wie das HTTP-Referer-Feld. Überprüfen Sie auch, dass Ihre Website-URL im richtigen Format gesendet wird. Entfernen Sie die Bedingung und überprüfen Sie die Header der Bilder. – Guy

+0

Wie überprüfe ich das Format, in das meine Site-URL gesendet wird? Ich kann keine Büroklammer-Anhänge von der Website öffnen, wenn ich den Referrer eingebe :-( – rigyt

Verwandte Themen