world woldle tagxedo creator create art cloud google-cloud-storage

cloud - woldle - wordle



¿Cómo se hacen públicos muchos archivos en Google Cloud Storage? (6)

Tengo 1000 archivos en Google Cloud Storage para hacer públicos, o en general una jerarquía de directorios.

En la interfaz de usuario web, solo puedo hacer que uno a la vez sea público.

Hay alguna manera de hacer esto.


Cuando ejecutas: gsutil -m acl set -R -a public-read gs://bucket defines lectura pública para todos los objetos actualmente en tu bucket, pero cuando cargas archivos nuevos ellos no serán públicos por defecto.

Lo que encontré es que vale la pena definir un acl por defecto del cubo como public-read. gsutil defacl set public-read gs://bucket


La documentación actual (octubre / 2017) sobre el alojamiento de un sitio web estático que se encuentra here apunta a:

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

Donde -r hace el truco recursivo y -u AllUsers:R le da al público acceso de lectura.


La forma más fácil de lograr esto sería mediante el uso de una consola.

Haga clic en "Editar permisos de depósito"

Ingrese allUsers en Agregar miembros. A continuación, Select Role > Storage > Storage Object Viewer

¡Atención! Esto otorgará permiso de lectura a todas las personas en Internet para todos los objetos en ese segmento seleccionado.


Para copiar y pegar en nombre de Erik, esto funcionó de manera consistente para mí:

Hacer grupos de objetos de lectura pública

Para hacer que todos los objetos en un cubo sean legibles públicamente:

CONSOLEGSUTILREST APIS Utilice el comando gsutil iam ch, reemplazando [VALUES_IN_BRACKETS] con los valores adecuados:

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


Puede hacer que todos los objetos en un cubo sean públicos. Aquí está el link .

  1. Abra el navegador de Cloud Storage en Google Cloud Platform Console.
  2. En la lista de depósitos, haga clic en el nombre del depósito que desea hacer público.
  3. Seleccione la pestaña Permisos cerca de la parte superior de la página.
  4. Haga clic en el botón Agregar miembros.
    Aparecerá el cuadro de diálogo Agregar miembros.
  5. En el campo Miembros, ingrese allUsers.
  6. En la lista desplegable Roles, seleccione el submenú Almacenamiento y haga clic en la opción Visor de objetos de almacenamiento.
  7. Haga clic en Agregar.

Una vez que se comparte públicamente, aparece un ícono de enlace para cada objeto en la columna de acceso público>. Puede hacer clic en este icono para obtener la URL del objeto.


Ejecute gsutil -m acl set -R -a public-read gs://bucket

  • El -m emite varias solicitudes al mismo tiempo.
  • El -R emite solicitudes para cada objeto en su cubo.
  • The -a emite solicitudes para cada versión de cada objeto.

Ver gsutil help acl para más información.

En la capa API, gsutil emite la siguiente solicitud HTTP:

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

Puedes ver esto usando el indicador -D con gsutil :

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