2016-04-12 4 views
0

Nach dem Surfen im Internet weiß ich endlich, dass Google + diesen User-Agent "Google (+ https://developers.google.com/+/web/snippet/)" , aber wenn ich diesen Benutzer-Agent auf meine S3-Bucket-Politik, weiß es irgendwie nicht t arbeiten. Dies ist die S3-Richtlinie für Useragent. Jede Hilfe wäre willkommen.Aws S3 Bucket-Richtlinie für Google plus User-Agent

{ 
"Version": "2008-10-17", 
"Statement": [ 
    { 
     "Sid": "Allow in my domains", 
     "Effect": "Allow", 
     "Principal": { 
      "AWS": "*" 
     }, 
     "Action": "s3:GetObject", 
     "Resource": "arn:aws:s3:::awesomebucket/*", 
     "Condition": { 
      "StringEquals": { 
       "aws:UserAgent": [ 
        "Twitterbot/", 
        "Google (+https://developers.google.com/+/web/snippet/)", 
        "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" 
       ] 
      } 
     } 
    }, 
    { 
     "Sid": "Deny access if referer is not my sites", 
     "Effect": "Deny", 
     "Principal": { 
      "AWS": "*" 
     }, 
     "Action": "s3:GetObject", 
     "Resource": "arn:aws:s3:::awesomebucket/*", 
     "Condition": { 
      "StringNotEquals": { 
       "aws:UserAgent": [ 
        "Twitterbot/", 
        "Google (+https://developers.google.com/+/web/snippet/)", 
        "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" 
       ] 
      } 
     } 
    } 
]} 

Antwort

1

Ihr Web-Server eine Anfrage mit dem User-Agent enthält den folgenden Text

Die AWS String Bedingungen Sie verwenden genau sind sehen Matcher, aber die Google+ UA enthält nur diese Zeichenfolge. Die tatsächliche UA wird wie folgt aussehen:

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.75 Safari/537.36 Google (+https://developers.google.com/+/web/snippet/) 

Sie werden den StringLike Zustand oder etwas ähnliches verwenden möchten.