S3 via CloudFront gibt mir immer Zugriff verweigert Meldung
So viel wie es ist leicht zu set-up von Amazon Cloudfront für das benutzerdefinierte Ursprünge, es ist mir eine harte Zeit in der Einrichtung für S3 Herkunft.
Unabhängig davon, wie ich meine Einstellungen ändern, wenn Sie versuchen, Zugriff S3-Objekt über CloudFront, es gibt mir Zugriff verweigert-Meldung.
Ich bin mit CloudFront für eine vollständige Website Lieferung. Also die URL, die ich verwenden möchten, und die, die ich bin immer in der AWS-Zugriff verweigert-Meldung auf:
http://www.mydomainname.com/imagefile/live/media/medium/06904976c744edf870db308a08320284.JPG
Den direkten S3-URL für das Objekt ist unten und es funktioniert gut:
https://s3-eu-west-1.amazonaws.com/my-s3-bucket-name/live/media/medium/06904976c744edf870db308a08320284.JPG
Cloudfront Origin-Einstellungen:
Cloufront Verhalten Einstellungen:
S3-Richtlinie (natürlich anstelle von "mein-s3-bucket-name" - es ist eine echte bucket-Namen verwendet).
{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "PublicReadGetObject",
"Effect": "Deny",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-s3-bucket-name/live/bk/*"
},
{
"Sid":" Grant a CloudFront Origin Identity access to support private content",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::my-s3-bucket-name/live/media/medium/*",
"arn:aws:s3:::my-s3-bucket-name/live/media/thumb/*",
"arn:aws:s3:::my-s3-bucket-name/live/media/thumb_v2/*"
]
}
]
}
Verwendete Dateiname in der URL selbst hat "Jedermann" als ein Empfänger mit dem öffnen/download-Berechtigungen.
Kann jemand erkennen, wo das Problem ist?
InformationsquelleAutor Aidas | 2015-02-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Pfade, die Sie anfordern, sind nicht die gleichen, können Sie versuchen, die Beantragung der gleiche Pfad, den Sie direkt auf s3 aber mit der CloudFront bereitgestellten DNS-Namen?
CloudFront:
/imagefile/live/media/medium/06904976c744edf870db308a08320284.JPG
S3:
/live/media/medium/06904976c744edf870db308a08320284.JPG
Ich meine, die Pfade sind nicht die selben. CloudFront ist ein proxy, es sei denn, Sie sind mit Ursprung+Pfad, ist es nicht ändern Sie den Pfad. Wenn /live/ ist nicht zu s3, müssen Sie möglicherweise die Einrichtung eines cache-Verhalten /Leben,/*, und verwenden Sie Ihre s3 Herkunft. Ihre /imagesfile/ cache-Verhalten nicht auf die Wurzel von Ihrem s3-bucket, Punkte zu yourbucket/Dokumenten/.
Ah! Jetzt verstehe ich. Wegen irgendeinem Grund, den ich war unter Eindruck, dass /imagesfile nicht zu existieren auf S3 und es würde Punkt-zu-root. Ich war falsch. Nach der änderung den cache-Verhalten, die dem Muster entsprechen der "live/*" ich bin jetzt in der Lage, erfolgreich den Zugriff auf Dateien in meinem S3 via Cloudfront. Danke!
Was war das cache-Verhalten änderung? Ich habe das gleiche problem jetzt.
InformationsquelleAutor imperalix