2016-12-10 24 views
5

Jestem nowy dla aws cli i spędziłem sporo czasu w documentation, ale nie mogę dowiedzieć się, jak ustawić uprawnienia do plików po ich przesłaniu. Więc jeśli przesłany plik z:Jak używać aws cli do ustawiania uprawnień do plików w wiadrze S3?

aws s3 cp assets/js/d3-4.3.0.js s3://example.example.com/assets/js/

i nie ustawić uprawnienia dostępu, muszę sposób ich ustawiania. Czy w aws cli jest odpowiednik chmod 644?

A w takim razie czy istnieje sposób na uzyskanie pozwolenia na dostęp?

Wiem, że mogłem użyć flagi --acl public-read z aws s3 cp, ale jeśli nie, mogę ustawić dostęp bez powtarzania polecenia pełnej kopii?

Odpowiedz

8

Większość ludzi tęskni za faktem, że awscli obsługuje dwie grupy działań S3: s3 i s3api.

Można użyć aws s3api put-object-acl, aby ustawić uprawnienia ACL dla istniejącego obiektu.

+5

Bonus: można również użyć 'get-object-acl', aby zobaczyć istniejące uprawnienia. 'aws s3api get-object-acl --bucket bucket.name - ścieżka klucza/do/file.ext' – Amanda

+1

W jaki sposób można to zrobić dla wszystkich plików w wiadrze? Wydaje się, że CLI nie akceptuje symboli wieloznacznych dla parametru --key. – PrgTrdr

+2

@PrgTrdr Można zastosować zasadę wiadro (zobacz https://stackoverflow.com/questions/19176926/how-to-make-all-objects-in-aws-s3-bucket-public-by-default) lub zastosować ACL dla każdego obiektu, ale musi to być wykonane obiekt po obiekcie. Istnieją również narzędzia innych firm (takie jak http://s3browser.com/share-s3-bucket-edit-acls.php). – jarmod