Jak mogę ustawić segment w Amazon S3, aby wszystkie pliki były domyślnie tylko do odczytu publicznego?
Jak mogę ustawić segment w Amazon S3, aby wszystkie pliki były domyślnie tylko do odczytu publicznego?
Odpowiedzi:
Możesz ustawić zasady segmentu zgodnie z opisem w tym poście na blogu:
http://ariejan.net/2010/12/24/public-readable-amazon-s3-bucket-policy/
Zgodnie z sugestią @ robbyt, utwórz zasadę segmentu za pomocą następującego JSON:
{
"Version": "2008-10-17",
"Statement": [{
"Sid": "AllowPublicRead",
"Effect": "Allow",
"Principal": { "AWS": "*" },
"Action": ["s3:GetObject"],
"Resource": ["arn:aws:s3:::bucket/*" ]
}]
}
Ważne : zamień bucket
w Resource
wierszu nazwę wiadra.
arn:aws:s3:::bucket
należy również dodać do Resource
tablicy. (Więc bez /*
.) Mam nadzieję, że to pomoże innym, którzy zmagali się z tym, jak ja.
sync
, a nie tylko przeglądać wiadro.
List
uprawnienia Everyone
w sekcji Właściwości> Uprawnienia segmentu.
"2017-11-16",
Amazon udostępnia narzędzie do generowania zasad:
https://awspolicygen.s3.amazonaws.com/policygen.html
Następnie możesz wprowadzić wymagania zasad dla segmentu na konsoli AWS:
aws s3 sync ./local-folder-name s3://remote-bucket-name --acl=public-read