Подтвердить что ты не робот

Как сделать много файлов общедоступными в Google Cloud Storage?

У меня есть 1000 файлов в облачном хранилище Google, чтобы опубликовать их или, в общем, иерархию каталогов.

В пользовательском интерфейсе Интернета я могу только представить, что каждый из них является общедоступным.

Есть ли способ сделать это.

4b9b3361

Ответ 1

Выполнить gsutil -m acl set -R -a public-read gs://bucket

  • -m выдает несколько запросов одновременно.
  • -R выдает запросы для каждого объекта в вашем ковше.
  • -a выдает запросы для каждой версии каждого объекта.

Подробнее см. gsutil help acl.

На уровне API gsutil выдается следующий запрос HTTP:

PUT /bucket/obj?acl HTTP/1.1
Host: storage.googleapis.com
x-goog-acl: public-read

Вы можете увидеть это, используя флаг -D с gsutil:

gsutil -D setacl public-read gs://bucket/obj

Ответ 2

При запуске: gsutil -m acl set -R -a public-read gs://bucket вы определяете общедоступное чтение для всех объектов, находящихся в вашем ведре, но при загрузке новых файлов они не будут общедоступны по умолчанию.

То, что я нашел, - это то, что стоит определить acc по умолчанию для acc как public-read gsutil defacl set public-read gs://bucket

Ответ 3

Вы можете сделать все объекты в ведре общедоступными. Здесь ссылка .

Ответ 4

Текущая (октябрь/2017) документация о размещении статического веб-сайта найдена здесь указывает на:

gsutil acl ch -r -u AllUsers:R gs://bucket-name

Где -r рекурсивный трюк и -u AllUsers:R дает доступ к общедоступному доступу.

Ответ 5

Чтобы скопировать и вставить имя Erik, это работало последовательно для меня:

Создание групп объектов, общедоступных для чтения

Сделать все объекты в ведре общедоступными:

CONSOLEGSUTILREST APIS Используйте команду gsutil iam ch, заменяя [VALUES_IN_BRACKETS] с соответствующими значениями:

 gsutil iam ch allUsers:objectViewer gs://[BUCKET_NAME]