Cette page explique comment activer et désactiver les paiements du demandeur, ainsi que comment vérifier si cette fonctionnalité est activée sur un bucket.
Rôles requis
Pour obtenir les autorisations requises pour définir et gérer les paiements du demandeur, demandez à votre administrateur de vous accorder le rôle "Administrateur de l'espace de stockage" (roles.storage.Admin
) sur le projet contenant le bucket.
Ce rôle contient les autorisations requises pour définir et gérer le paiement par le demandeur. Pour afficher les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
storage.buckets.get
storage.buckets.update
resourcemanager.projects.createBillingAssignment
- Cette autorisation n'est requise que si vous ne disposez pas d'un compte de facturation à utiliser pour désactiver les paiements du demandeur. Pour en savoir plus, consultez la section Conditions d'utilisation et d'accès.
Vous pouvez également obtenir ces autorisations avec d'autres rôles prédéfinis ou rôles personnalisés.
Pour savoir comment attribuer des rôles aux projets, consultez la page Attribuer ou révoquer un rôle.
Définir les paiements du demandeur
Pour activer ou désactiver les paiements du demandeur sur un bucket, procédez comme suit :
Console
- Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.
Dans la liste des buckets, recherchez celui que vous souhaitez définir et recherchez la colonne Paiements du demandeur.
La valeur de la colonne indique l'état actuel des paiements du demandeur pour ce bucket.
Cliquez sur l'état actuel des paiements du demandeur pour le bucket.
Dans la fenêtre qui apparaît, cliquez sur Activer ou Désactiver selon l'état pour lequel vous souhaitez définir les paiements du demandeur.
Une fois la fonctionnalité activée, la mention Activé accompagnée d'une bulle verte apparaît dans la colonne Paiements du demandeur du bucket. Lorsqu'elle est désactivée, une bulle grise et la mention Désactivé apparaissent dans la colonne.
Pour savoir comment obtenir des informations détaillées sur les erreurs liées aux opérations Cloud Storage ayant échoué dans la console Google Cloud, consultez la section Dépannage.
Ligne de commande
Exécutez la commande gcloud storage buckets update
avec l'option appropriée :
gcloud storage buckets update gs://BUCKET_NAME FLAG
Où :
BUCKET_NAME
correspond au nom du bucket concerné. Exemple :my-bucket
FLAG
correspond soit à--requester-pays
pour activer les paiements du demandeur, soit à--no-requester-pays
pour les désactiver.
Si l'opération réussit, la réponse se présente comme suit :
Updating gs://my-bucket/... Completed 1
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
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 la page Configurer l'authentification pour les bibliothèques clientes.
L'exemple suivant active les paiements du demandeur sur un bucket :
L'exemple suivant désactive les paiements du demandeur sur un bucket :
API REST
API JSON
Vous devez installer et initialiser gcloud CLI, ce qui vous permet de générer un jeton d'accès pour l'en-tête
Authorization
.Créez un fichier JSON contenant les informations suivantes :
{ "billing": { "requesterPays": STATE } }
où STATE est
true
oufalse
.Utilisez
cURL
pour appeler l'API JSON avec une requête de bucketPATCH
:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=billing"
Où :
JSON_FILE_NAME
correspond au chemin d'accès au fichier JSON que vous avez créé à l'étape 2.BUCKET_NAME
correspond au nom du bucket concerné. Exemple :my-bucket
API XML
Vous devez installer et initialiser gcloud CLI, ce qui vous permet de générer un jeton d'accès pour l'en-tête
Authorization
.Créez un fichier XML contenant les informations suivantes :
<BillingConfiguration> <RequesterPays>STATE</RequesterPays> </BillingConfiguration>
où STATE est
Enabled
ouDisabled
.Utilisez
cURL
pour appeler l'API XML avec une requête de bucketPUT
et un paramètre de chaîne de requêtebilling
:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?billing"
Où :
XML_FILE_NAME
correspond au chemin d'accès au fichier XML que vous avez créé à l'étape 2.BUCKET_NAME
correspond au nom du bucket concerné. Exemple :my-bucket
Vérifier si les paiements du demandeur sont activés
Pour vérifier si les paiements du demandeur sont activés sur un bucket, procédez comme suit :
Console
- Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.
Dans la liste des buckets, l'état des paiements du demandeur de chaque bucket est indiqué dans la colonne Paiements du demandeur.
Si la fonctionnalité est activée, l'état est affiché en vert et le mot Activer apparaît.
Ligne de commande
Exécutez la commande gcloud storage buckets describe
avec l'option --format
:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(requester_pays)"
Où BUCKET_NAME
correspond au nom du bucket dont vous souhaitez afficher l'état. Exemple :my-bucket
Si l'opération réussit, la réponse se présente comme suit :
requester_pays: true
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 la page Configurer l'authentification pour les 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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
API REST
API JSON
Vous devez installer et initialiser gcloud CLI, ce qui vous permet de générer un jeton d'accès pour l'en-tête
Authorization
.Utilisez
cURL
pour appeler l'API JSON avec une requête de bucketGET
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=billing"
Où
BUCKET_NAME
est le nom du bucket concerné. Exemple :my-bucket
API XML
Vous devez installer et initialiser gcloud CLI, ce qui vous permet de générer un jeton d'accès pour l'en-tête
Authorization
.Utilisez
cURL
pour appeler l'API XML avec une requête de bucketGET
et un paramètre de chaîne de requêtebilling
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?billing"
Où
BUCKET_NAME
est le nom du bucket concerné. Exemple :my-bucket
Accéder aux buckets exploitant les paiements du demandeur
L'exemple suivant décrit comment inclure un projet de facturation pour pouvoir télécharger un objet stocké dans un bucket exploitant les paiements du demandeur. Vous pouvez suivre une procédure semblable pour exécuter d'autres requêtes sur un bucket où les paiements du demandeur sont activés ou sur les objets qu'il contient. Consultez la section Exigences relatives à l'utilisation et aux accès pour connaître les conditions préalables.
Console
- Dans la console Google Cloud, accédez à la page Buckets Cloud Storage.
Dans la liste des buckets, cliquez sur le nom du bucket qui contient l'objet que vous souhaitez télécharger.
Dans la fenêtre qui apparaît, sélectionnez un projet de facturation à l'aide du menu déroulant.
Cochez la case pour confirmer que vous êtes autorisé à utiliser le projet sélectionné à des fins de facturation.
Cliquez sur Enregistrer.
Téléchargez l'objet comme vous le feriez normalement.
Pour savoir comment obtenir des informations détaillées sur les erreurs liées aux opérations Cloud Storage ayant échoué dans la console Google Cloud, consultez la section Dépannage.
Ligne de commande
Utilisez l'indicateur --billing-project
dans votre requête :
gcloud storage cp gs://BUCKET_NAME/OBJECT_NAME SAVE_TO_LOCATION --billing-project=PROJECT_IDENTIFIER
Où :
BUCKET_NAME
correspond au nom du bucket contenant l'objet que vous téléchargez. Exemple :my-bucket
OBJECT_NAME
correspond au nom de l'objet que vous téléchargez. Exemple :pets/dog.png
SAVE_TO_LOCATION
correspond au chemin d'accès local où vous enregistrez l'objet. Par exemple,Desktop/Images
.PROJECT_IDENTIFIER
correspond à l'ID ou au numéro du projet à facturer. Exemple :my-project
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 la page Configurer l'authentification pour les 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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
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 la page Configurer l'authentification pour les bibliothèques clientes.
API REST
API JSON
Vous devez installer et initialiser gcloud CLI, ce qui vous permet de générer un jeton d'accès pour l'en-tête
Authorization
.Dans votre requête, incluez le paramètre de chaîne de requête
userProject
défini sur l'ID du projet à facturer :curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME?alt=media&userProject=PROJECT_IDENTIFIER"
Où :
SAVE_TO_LOCATION
correspond à l'emplacement où vous voulez enregistrer l'objet. Exemple :Desktop/dog.png
BUCKET_NAME
correspond au nom du bucket concerné. Exemple :my-bucket
OBJECT_NAME
correspond au nom de l'objet encodé en URL que vous souhaitez télécharger. Par exemple,pets/dog.png
, encodé au format URL :pets%2Fdog.png
.PROJECT_IDENTIFIER
correspond à l'ID ou au numéro du projet à facturer. Exemple :my-project
API XML
Vous devez installer et initialiser gcloud CLI, ce qui vous permet de générer un jeton d'accès pour l'en-tête
Authorization
.Dans votre requête, incluez l'en-tête
x-goog-user-project
défini sur l'ID du projet à facturer :curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: PROJECT_ID" \ -o "SAVE_TO_LOCATION" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Où :
PROJECT_ID
correspond à l'ID du projet à facturer. Exemple :my-project
SAVE_TO_LOCATION
correspond à l'emplacement où vous voulez enregistrer l'objet. Exemple :Desktop/dog.png
BUCKET_NAME
correspond au nom du bucket concerné. Exemple :my-bucket
OBJECT_NAME
correspond au nom de l'objet encodé en URL que vous souhaitez télécharger. Par exemple,pets/dog.png
, encodé au format URL :pets%2Fdog.png
.