Ich habe eine PHP + Symfony Web-App hinter Varnish mit Sites Assets (d. H Bilder, Video) in einem S3-Bucket gespeichert. Ich möchte den Zugriff auf diese Assets mithilfe einer s3-Bucket-Richtlinie durch Referrer einschränken. Die Politik, die ich auf den heißen Stein angelegt ist (bei der Identifizierung info entfernt):S3 Bucket Policy nach Domäne zurück 403 Forbidden für Objektanforderungen in Symfony App mit Varnish
{
"Version": "2012-10-17",
"Id": "http referrer policy example",
"Statement": [
{
"Sid": "Allow get & put requests referred by test.com.",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::mybucket/*",
"Condition": {
"StringLike": {
"aws:Referer": [
"https://www.test.com/*",
"https://test.com/*"
]
}
}
},
{
"Sid": "Explicit deny to ensure requests are allowed only from specific referrer.",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::mybucket/*",
"Condition": {
"StringNotLike": {
"aws:Referer": [
"https://www.test.com/*",
"https://test.com/*"
]
}
}
}
]
}
ich meine Politik gegen mehr SO und andere Forum-Beiträge verglichen habe und es scheint richtig. Wenn ich diese Politik zu meinen Eimer gelten, fordert für jeden Vermögenswert auf jeder Seite von meiner Seite mit Antwortstatus 403 Verboten scheint gebrochen:
Request URL:http://mybucket.s3-eu-west-1.amazonaws.com/site-assets/img/film-icon.svg
Request Method:GET
Status Code:403 Forbidden
Remote Address:54.231.131.120:80
Referrer Policy:no-referrer-when-downgrade
Wenn ich die Politik es funktioniert wieder entfernen. Die Richtlinie tritt also in Kraft und erlaubt meiner eigenen Domäne (in diesem Beispielcode test.com) nicht den Zugriff auf die Assets, sondern definiert sie in der Bucket-Richtlinie als "Zulassen".
Falls es relevant ist, verwendet meine Webanwendung KnpGaufette als Dateisystem, das für die Verwendung von s3 konfiguriert ist und dieses wiederum wird von LiipImagineBundle verwendet, um jede Bildverarbeitung bei Bedarf zu verarbeiten. Mein Server hat auch Varnish 4 vor dem Webserver installiert, um Caching zu ermöglichen (Ich habe versucht, den Lack-Cache zu leeren, den Lack und den Apache neu zu starten, nachdem ich die Police in dem Fall angewendet habe).
Wenn Sie helfen können, wäre das toll.
in ein ähnliches Problem Ran, vielleicht wird diese Ihnen helfen: https://stackoverflow.com/questions/33963428/sonatamediabundle-s3-aws-the-configured-bucket-my-bucket-does-not-exist/47201223 # 47201223 –
@ThomasKekeisen Danke. Ich werde es versuchen, wenn ich einen Moment habe. – Forer