Wie kann ich in Amazon S3 einen Bucket festlegen, damit alle Dateien standardmäßig öffentlich schreibgeschützt sind?
Wie kann ich in Amazon S3 einen Bucket festlegen, damit alle Dateien standardmäßig öffentlich schreibgeschützt sind?
Antworten:
Sie können eine Bucket-Richtlinie festlegen, wie in diesem Blog-Beitrag beschrieben:
http://ariejan.net/2010/12/24/public-readable-amazon-s3-bucket-policy/
Erstellen Sie gemäß dem Vorschlag von @ robbyt eine Bucket-Richtlinie mit dem folgenden JSON:
{
"Version": "2008-10-17",
"Statement": [{
"Sid": "AllowPublicRead",
"Effect": "Allow",
"Principal": { "AWS": "*" },
"Action": ["s3:GetObject"],
"Resource": ["arn:aws:s3:::bucket/*" ]
}]
}
Wichtig : Ersetzen Sie bucket
in der Resource
Zeile durch den Namen Ihres Eimers.
arn:aws:s3:::bucket
muss dem Resource
Array ebenfalls etwas hinzugefügt werden . (Also ohne die /*
.) Ich hoffe, das hilft anderen, die wie ich damit zu kämpfen hatten.
sync
, nicht nur den Eimer anzuzeigen.
List
Berechtigungen erteilen Everyone
.
"2017-11-16",
Amazon bietet ein Tool zur Richtliniengenerierung:
https://awspolicygen.s3.amazonaws.com/policygen.html
Danach können Sie die Richtlinienanforderungen für den Bucket in der AWS-Konsole eingeben:
aws s3 sync ./local-folder-name s3://remote-bucket-name --acl=public-read