J'ai 1000 fichiers dans Google Cloud Storage à rendre public, ou en général une hiérarchie de répertoire.
Dans l'interface Web, il semble que je ne puisse en rendre qu'un seul public à la fois.
Y a-t-il un moyen de le faire ?
J'ai 1000 fichiers dans Google Cloud Storage à rendre public, ou en général une hiérarchie de répertoire.
Dans l'interface Web, il semble que je ne puisse en rendre qu'un seul public à la fois.
Y a-t-il un moyen de le faire ?
Exécuter gsutil -m acl set -R -a public-read gs://bucket
-m
émet plusieurs demandes en même temps.-R
émet des requêtes pour chaque objet de votre seau.-a
émet des demandes pour chaque version de chaque objet.Voir gsutil help acl
pour plus d'informations.
Au niveau de la couche API gsutil émet la requête HTTP suivante :
PUT /bucket/obj?acl HTTP/1.1
Host: storage.googleapis.com
x-goog-acl: public-read
Vous pouvez le constater en utilisant la fonction -D
drapeau avec gsutil
:
gsutil -D setacl public-read gs://bucket/obj
Vous pouvez rendre publics tous les objets d'un seau. Voici le lien .
- Ouvrez le navigateur de stockage en nuage dans la console de la plateforme Google Cloud.
- Dans la liste des godets, cliquez sur le nom du godet que vous voulez rendre public.
- Sélectionnez l'onglet Permissions en haut de la page.
- Cliquez sur le bouton Ajouter des membres.
La boîte de dialogue Ajouter des membres apparaît.- Dans le champ Membres, entrez allUsers.
- Dans le menu déroulant Rôles, sélectionnez le sous-menu Stockage, puis cliquez sur l'option Storage Object Viewer.
- Cliquez sur Ajouter.
Une fois partagé publiquement, une icône de lien apparaît pour chaque objet dans la >colonne d'accès public. Vous pouvez cliquer sur cette icône pour obtenir l'URL de l'objet.
Quand tu cours : gsutil -m acl set -R -a public-read gs://bucket
vous définissez la lecture publique pour tous les objets actuellement dans votre seau, mais lorsque vous téléchargez de nouveaux fichiers, ils ne seront pas publics par défaut.
Ce que j'ai trouvé, c'est qu'il vaut la peine de définir l'acl par défaut d'un seau comme public-read. gsutil defacl set public-read gs://bucket
Le moyen le plus simple d'y parvenir est d'utiliser une console.
Cliquez sur "Modifier les autorisations du seau".
Entrez allUsers
dans Ajouter des membres. Puis Select Role
> Storage
> Storage Object Viewer
Attention ! Cette opération donne à toutes les personnes présentes sur l'internet l'autorisation de lire tous les objets de la section sélectionnée.
La documentation actuelle (octobre 2017) sur l'hébergement d'un site Web statique a été trouvée. aquí pointe vers :
gsutil acl ch -r -u AllUsers:R gs://bucket-name
Où le -r
fait le tour récursif et -u AllUsers:R
donne au public un accès en lecture.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.