2016-11-23 3 views
0

Ich versuche, ein privates Objekt auf einer statischen Website gehostet S3 Bucket, die von einer signierten URL zugänglich ist. Scheint einfach genug, aber die Verwendung des folgenden Codes mit virtual_host aktiviert scheint immer zu einem 403 Forbidden führen. Wenn ich virtual_host deaktiviere, funktioniert es wie erwartet.Aws :: S3 :: Presigner presigned_url gibt 403 mit virtual_host zurück

url = Aws::S3::Presigner.new.presigned_url(
    :get_object, 
    :bucket => BUCKET, 
    :key => KEY, 
    :virtual_host => true 
) 

uri = URI.parse(url) 
http = Net::HTTP.new(uri.host, uri.port) 
request = Net::HTTP::Get.new(uri.request_uri) 
resp = http.request(request) 
puts resp.body 

Gibt es eine Berechtigung/Einstellung, die fehlt, damit dies funktioniert?

Antwort

0

Dies sind die Gründe

  1. Zugriff verweigert
  2. Konto Ausgabe

enter image description here