Projets

Cette page décrit la relation entre les projets Google Cloud Console et les ressources Cloud Storage. Pour en savoir plus sur les projets de la console Google Cloud en général, consultez la section Projets dans Google Cloud.

Qu'est-ce qu'un projet ?

Un projet permet d'organiser toutes vos ressources Google Cloud. Toutes les données de Cloud Storage appartiennent à un projet. Chaque projet comprend un ensemble d'utilisateurs, un ensemble d'API et des paramètres de facturation, d'authentification et de surveillance pour ces API. Ainsi, par exemple, tous vos buckets et objets Cloud Storage, ainsi que les autorisations des utilisateurs pour y accéder, sont contenus dans un projet. Vous pouvez avoir un seul projet ou en créer plusieurs et les utiliser pour organiser vos ressources Google Cloud, y compris vos données Cloud Storage, en groupes logiques.

Quand spécifier un projet ?

La plupart du temps, il n'est pas nécessaire de spécifier un projet lorsque vous effectuez des actions dans Cloud Storage. Cependant, vous devez inclure l'ID ou le numéro du projet dans les cas suivants :

Console

  • Lorsque vous utilisez Cloud Storage avec la console Google Cloud, vous êtes automatiquement associé à un projet. Vous pouvez modifier des projets à l'aide du menu déroulant situé en haut de la fenêtre de la console Google Cloud.

  • Lorsque vous accédez pour la première fois à un bucket pour lequel la fonction de paiements du demandeur est activée, vous êtes invité à sélectionner un projet sur lequel se basera la facturation des requêtes. Vous pouvez ensuite modifier le projet de facturation à l'aide du bouton Changer de projet situé au-dessus de la liste des objets du bucket.

Ligne de commande

Les commandes suivantes utilisent la propriété project définie dans votre configuration de la Google Cloud CLI, sauf si vous utilisez l'option globale --project dans la commande pour spécifier un autre projet :

Utilisez l'option globale --billing-project, ainsi qu'un identifiant de projet, pour indiquer au projet de facturer l'accès au bucket. Cette action est nécessaire pour accéder à un bucket pour lequel la fonction de paiements du demandeur est activée, et est sinon facultative.

Bibliothèques clientes

Les bibliothèques clientes Cloud Storage nécessitent la spécification d'un projet dans les mêmes circonstances que l'API JSON.

API JSON

Les méthodes suivantes nécessitent de spécifier un projet :

Le projet est envoyé en tant que paramètre dans l'URL de la requête, comme dans l'exemple suivant :

GET https://storage.googleapis.com/storage/v1/b?project=PROJECT_IDENTIFIER
  • Pour indiquer à un projet de facturer l'accès aux buckets, utilisez le paramètre de requête userProject, ainsi qu'un ID de projet, comme dans l'exemple suivant :

    GET https://storage.googleapis.com/storage/v1/b?userProject=PROJECT_IDENTIFIER

    Ce paramètre de requête est requis lors de l'accès à un bucket pour lequel la fonction de paiements du demandeur est activée, et est sinon facultatif.

API XML

Les requêtes suivantes nécessitent de spécifier un projet, sauf si vous avez défini un projet par défaut pour l'accès interopérable :

Le projet associé à ces requêtes de l'API XML est spécifié dans l'en-tête HTTP x-goog-project-id, comme dans l'exemple suivant :

x-goog-project-id: PROJECT_ID

L'en-tête est facultatif pour d'autres requêtes d'API XML.

  • Pour indiquer à un projet de facturer l'accès au bucket, utilisez l'en-tête x-goog-user-project ainsi qu'un ID de projet, comme dans l'exemple suivant :

    x-goog-user-project: PROJECT_ID

    Cet en-tête est requis pour accéder à un bucket pour lequel la fonction de paiements du demandeur est activée, et est sinon facultatif.

Projets et autorisations

Pour chaque projet, vous utilisez Identity and Access Management (IAM) pour permettre à d'autres de gérer votre projet et de travailler dessus. Lorsque vous attribuez un rôle IAM à un compte principal, tel qu'un compte utilisateur, ce compte obtient certaines autorisations lui permettant d'effectuer des actions. Lorsque vous attribuez un rôle au niveau du projet, l'accès fourni par le rôle s'applique à tous les buckets et objets du projet. Sinon, lorsque vous attribuez un rôle à un bucket individuel, l'accès fourni par le rôle est limité à ce bucket et aux objets qu'il contient.

Pour obtenir la liste des rôles disponibles qui s'appliquent à Cloud Storage, ainsi que des informations sur la manière dont un ensemble spécial de rôles, appelés rôles de base, s'applique à Cloud Storage, consultez la page Rôles IAM Cloud Storage.

Pour découvrir comment afficher, accorder et révoquer des rôles au niveau du bucket et du projet, consultez la section Utiliser Cloud IAM avec des projets.

Comptes de service

Les comptes de service permettent aux applications de s'authentifier et d'accéder aux ressources et aux services Google Cloud. Par exemple, vous pouvez créer un compte de service que vos instances Compute Engine utilisent pour accéder aux objets stockés dans des buckets Cloud Storage. Les comptes de service sont créés dans un projet et disposent d'une adresse e-mail unique qui les identifie.

Vous trouverez ci-dessous des exemples d'actions liées à Cloud Storage, qui sont souvent entreprises par les comptes de service que vous créez et gérez :

Agents de service

Un agent de service est un type particulier de compte de service agissant pour le compte d'un service Google Cloud. Cloud Storage utilise un agent de service pour les fonctionnalités suivantes :

L'agent de service Cloud Storage n'est pas disponible initialement lorsque vous créez un projet. En revanche, il est automatiquement activé la première fois qu'on y accède, soit par l'une des fonctionnalités répertoriées ci-dessus, soit lorsque vous demandez le nom de l'agent de service. Vous devez activer l'agent de service avant de lui attribuer des autorisations.

Voici un exemple d'adresse e-mail pour l'agent de service Cloud Storage associé au numéro de projet 123456789876 :

service-123456789876@gs-project-accounts.iam.gserviceaccount.com

Étapes suivantes