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 bucketin der ResourceZeile durch den Namen Ihres Eimers.
arn:aws:s3:::bucketmuss dem ResourceArray 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.
ListBerechtigungen 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