Cette page vous explique comment rendre vos objets lisibles par tous sur l'Internet public. Pour savoir comment accéder aux données rendues publiques, consultez la page Accéder aux données publiques.
Rendre des objets individuels lisibles publiquement
Pour rendre certains objets lisibles par tous sur l'Internet public :
Console
- Ouvrez le navigateur Cloud Storage dans Google Cloud Console.
Ouvrir le navigateur Cloud Storage Examinez la colonne Contrôle des accès du bucket contenant l'objet que vous souhaitez rendre public. Si la colonne indique Ultraprécis, passez à l'étape suivante. Si elle indique Uniforme, vous ne pouvez pas rendre des objets individuels du bucket lisibles publiquement à l'aide de la procédure ci-dessous. À la place, rendez tous les objets du bucket lisibles publiquement ou utilisez des URL signées.
Cliquez sur le nom du bucket contenant l'objet que vous souhaitez rendre public, puis accédez à l'objet s'il se trouve dans un sous-répertoire.
Cliquez sur le menu Autres actions (
) associé à l'objet que vous souhaitez rendre public.
Dans le menu déroulant, sélectionnez Modifier les autorisations. Si l'option ne s'affiche pas, il est possible que le contrôle d'accès Uniforme soit activé. Pour plus de détails, reportez-vous à l'étape 2.
Dans la fenêtre qui apparaît en superposition, cliquez sur le bouton + Ajouter une entrée.
Ajoutez une autorisation pour allUsers.
- Sélectionnez Public pour le champ Entité.
- Dans le champ Nom, sélectionnez allUsers (Tous les utilisateurs).
- Sélectionnez Lecteur pour le champ Accès.
Cliquez sur Enregistrer.
Une fois le partage public effectué, un lien s'affiche dans la colonne Accès public. Vous pouvez cliquer sur cette icône pour obtenir l'URL de l'objet.
Consultez la page Dépannage pour obtenir des informations détaillées sur les erreurs liées aux opérations ayant échoué dans le navigateur Cloud Storage.
gsutil
Exécutez la commande gsutil acl ch
:
gsutil acl ch -u AllUsers:R gs://BUCKET_NAME/OBJECT_NAME
Où :
BUCKET_NAME
correspond au nom du bucket contenant l'objet que vous souhaitez rendre public. Exemple :my-bucket
OBJECT_NAME
correspond au nom de l'objet que vous souhaitez rendre public. Exemple :pets/dog.png
Si l'opération réussit, la réponse se présente comme suit :
Updated ACL on gs://my-bucket/pets/dog.png
Exemples de code
C++
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.
C#
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C#.
Go
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.
Java
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.
PHP
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage PHP.
Python
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.
API REST
API JSON
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth.
Créez un fichier .json contenant les informations suivantes :
{ "entity": "allUsers", "role": "READER" }
Exécutez
cURL
pour appeler l'API JSON avec une requête de LCAInsert
:curl -X POST --data-binary @JSON_FILE_NAME.json \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME/acl"
Où :
JSON_FILE_NAME
correspond au nom du fichier que vous avez créé à l'étape 2.OAUTH2_TOKEN
correspond au jeton d'accès que vous avez généré à l'étape 1.BUCKET_NAME
correspond au nom du bucket contenant l'objet que vous souhaitez rendre public. Exemple :my-bucket
.OBJECT_NAME
correspond au nom de l'objet que vous souhaitez rendre public. Exemple :pets/dog.png
API XML
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground de façon à utiliser vos propres identifiants OAuth.
Créez un fichier .xml contenant les informations suivantes :
<AccessControlList> <Entries> <Entry> <Scope type="AllUsers"/> <Permission>READ</Permission> </Entry> </Entries> </AccessControlList>
Exécutez
cURL
pour appeler l'API XML avec une requêteSet Object ACL
:curl -X PUT --data-binary @XML_FILE_NAME.xml \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME?acl"
Où :
XML_FILE_NAME
correspond au nom du fichier que vous avez créé à l'étape 2.OAUTH2_TOKEN
correspond au jeton d'accès que vous avez généré à l'étape 1.BUCKET_NAME
correspond au nom du bucket contenant l'objet que vous souhaitez rendre public. Exemple :my-bucket
.OBJECT_NAME
correspond au nom de l'objet que vous souhaitez rendre public. Exemple :pets/dog.png
Rendre tous les objets d'un bucket lisibles publiquement
Pour rendre tous les objets d'un bucket lisibles par tous sur l'Internet public :
Console
- Ouvrez le navigateur Cloud Storage dans Google Cloud Console.
Ouvrir le navigateur Cloud Storage Dans la liste des buckets, cliquez sur le nom de celui que vous souhaitez rendre public.
Sélectionnez l'onglet Autorisations en haut de la page.
Cliquez sur le bouton Ajouter des membres.
La boîte de dialogue Ajouter des membres s'affiche.
Dans le champ Nouveaux membres, saisissez
allUsers
.Dans la liste déroulante Sélectionner un rôle, sélectionnez le sous-menu Cloud Storage, puis cliquez sur l'option Lecteur des objets Storage.
Cliquez sur Enregistrer.
Une fois le partage public effectué, un lien s'affiche pour chaque objet dans la colonne Accès public. Vous pouvez cliquer sur cette icône pour obtenir l'URL de l'objet.
Consultez la page Dépannage pour obtenir des informations détaillées sur les erreurs liées aux opérations ayant échoué dans le navigateur Cloud Storage.
gsutil
Exécutez la commande gsutil iam ch
:
gsutil iam ch allUsers:objectViewer gs://BUCKET_NAME
où BUCKET_NAME
correspond au nom du bucket dont vous souhaitez rendre les objets publics. Exemple :my-bucket
Exemples de code
C++
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.
C#
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C#.
Go
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.
Java
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.
Python
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.
API REST
API JSON
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth.
Créez un fichier .json contenant les informations suivantes :
{ "bindings":[ { "role": "roles/storage.objectViewer", "members":["allUsers"] } ] }
Exécutez
cURL
pour appeler l'API JSON avec une requête de bucketPUT
:curl -X PUT --data-binary @JSON_FILE_NAME.json \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/iam"
Où :
JSON_FILE_NAME
correspond au nom du fichier que vous avez créé à l'étape 2.OAUTH2_TOKEN
correspond au jeton d'accès que vous avez généré à l'étape 1.BUCKET_NAME
est le nom du bucket dont vous souhaitez rendre les objets publics. Exemple :my-bucket
.
API XML
Il n'est pas possible de rendre tous les objets d'un bucket lisibles publiquement avec l'API XML. Utilisez plutôt gsutil ou l'API JSON.
Étape suivante
- Accédez aux données qui ont été rendues publiques.
- Apprenez-en plus sur les options de contrôle des accès pour vos buckets et vos objets.