Cette page vous explique comment lire les données d'objet de vos buckets Cloud Storage directement dans la mémoire de l'application ou de manière interactive dans votre navigateur Web ou votre terminal de ligne de commande. Il est recommandé de lire les objets en mémoire ou de manière interactive lorsque vous souhaitez diffuser, inspecter ou traiter des données d'une manière qui évite la surcharge du processeur, des E/S de disque et de la latence associée à l'écriture de fichiers dans un système de fichiers local persistant.
Pour savoir comment télécharger des objets dans un stockage persistant ou local, consultez Télécharger des objets. Pour obtenir une présentation conceptuelle des lectures et des téléchargements d'objets, consultez Lectures et téléchargements d'objets.
Rôles requis
Pour obtenir les autorisations nécessaires pour lire les données d'objet, demandez à votre administrateur de vous accorder les rôles IAM suivants :
- Lecteur des objets Storage (
roles/storage.objectViewer) sur le bucket - Administrateur de l'espace de stockage (
roles/storage.admin) sur le projet (obligatoire uniquement pour lire les données des objets à l'aide de la console Cloud de Confiance )
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Le rôle Lecteur des objets de l'espace de stockage (roles/storage.objectViewer) contient l'autorisation storage.objects.get, qui est requise pour lire les objets. Le rôle Administrateur de l'espace de stockage (roles/storage.admin) contient les autorisations storage.buckets.list et storage.buckets.get, en plus de l'autorisation storage.objects.get. Ces autorisations sont requises pour lister les buckets d'un projet et afficher des informations les concernant. Le rôle Administrateur de l'espace de stockage (roles/storage.admin) qui inclut ces autorisations n'est requis que lorsque vous souhaitez lire des objets de manière interactive à l'aide de la console Cloud de Confiance .
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour savoir comment attribuer des rôles aux buckets, consultez la section Définir et gérer des stratégies IAM sur des buckets.
Lire des objets de manière programmatique en mémoire
Cette section explique comment lire les données d'un objet en diffusant les octets de l'objet directement dans la mémoire de l'application.
Bibliothèques clientes
C++
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
C#
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C#.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
Go
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
Java
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
PHP
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage PHP.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
Python
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.
Pour vous authentifier auprès de Cloud Storage, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour les bibliothèques clientes.
Avant d'exécuter des exemples de code, définissez la variable d'environnement GOOGLE_CLOUD_UNIVERSE_DOMAIN sur s3nsapis.fr.
Rust
Lire des objets de manière interactive
Cette section explique comment lire des objets de manière interactive dans la fenêtre du navigateur de la consoleCloud de Confiance ou dans le terminal de ligne de commande stdout.
Console
- Dans la console Cloud de Confiance , accédez à la page Buckets de Cloud Storage.
Dans la liste des buckets, cliquez sur le nom du bucket dont vous souhaitez afficher le contenu.
Dans l'onglet Objets, cliquez sur le nom de l'objet que vous souhaitez lire.
Sur la page Détails de l'objet, cliquez sur l'URL publique ou authentifiée de l'objet pour lire ses données.
Ligne de commande
Pour diffuser le payload d'octets d'un objet directement dans votre terminal stdout, utilisez la commande gcloud storage cat :
gcloud storage cat gs://BUCKET_NAME/OBJECT_NAME
Remplacez les éléments suivants :
BUCKET_NAME: nom du bucket contenant l'objet que vous souhaitez lire. Exemple :my-bucketOBJECT_NAME: nom de l'objet que vous souhaitez lire. Exemple :dog.png
API REST
Pour lire les octets d'un objet et rediriger le flux de sortie vers votre terminal stdout, suivez les instructions ci-dessous.
API JSON
Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête
Authorization.Utilisez
cURLpour appeler l'API JSON avec une requêteobjects.getincluant l'option-o -et le paramètre de requêtealt=media:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -o - \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media"
Remplacez les éléments suivants :
BUCKET_NAME: nom du bucket contenant l'objet que vous souhaitez lire. Exemple :my-bucket.OBJECT_NAME: nom encodé en URL de l'objet que vous souhaitez lire. Par exemple,pets/dog.png, encodé au format URL :pets%2Fdog.png.
API XML
Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête
Authorization.Utilisez
cURLpour appeler l'API XML avec une requêteGETObject :curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/BUCKET_NAME/OBJECT_NAME"
Remplacez les éléments suivants :
BUCKET_NAME: nom du bucket contenant l'objet que vous souhaitez lire. Exemple :my-bucket.OBJECT_NAME: nom encodé en URL de l'objet que vous souhaitez lire. Par exemple,pets/dog.png, encodé au format URL :pets%2Fdog.png.