L'API Cloud Asset vous permet d'utiliser un langage de requête personnalisé pour interroger les métadonnées de ressource d'un projet, d'un dossier ou d'une organisation.
Avant de commencer
Activez l'API Cloud Asset pour votre projet.
Accordez l'autorisation
cloudasset.assets.searchAllResources
au compte utilisateur ou au compte de service qui envoie la requête. Cette autorisation est incluse dans les rôles de base et les rôles prédéfinis répertoriés dansRoles
.
Rechercher des ressources
Console
Pour rechercher toutes les ressources, procédez comme suit :
Accédez à la page Inventaire des éléments de la console Google Cloud.
Pour définir le champ d'application de votre recherche, ouvrez la liste des projets dans la barre de menu, puis sélectionnez l'organisation, le dossier ou le projet à interroger.
Sélectionnez l'onglet Ressource.
Pour rechercher des ressources, saisissez le texte de la requête dans la barre Filtre. Sélectionnez la zone de texte, puis une liste de champs pouvant faire l'objet d'une recherche s'affiche. La recherche de ressources accepte plusieurs champs. En savoir plus sur la syntaxe des requêtes
Les résultats de recherche peuvent également être filtrés en fonction des filtres Type d'élément, Projet et Emplacement prédéfinis dans le volet Filtrer les résultats.
Les ressources correspondant à la requête sont répertoriées dans la table Résultats.
Pour afficher la requête sous la forme d'une commande Google Cloud CLI, sélectionnez Afficher la requête.
Pour exporter les résultats, sélectionnez Télécharger au format CSV.
gcloud
Vous pouvez appeler SearchAllResources
à l'aide de la commande gcloud asset search-all-resources
. Vous devez exécuter la Google Cloud CLI version 302.0.0 ou ultérieure. Vous pouvez vérifier votre version à l'aide de la commande gcloud version
.
gcloud asset search-all-resources \
--scope=SCOPE \
--query=QUERY \
--asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
--order-by=ORDER_BY \
--read-mask=READ_MASK
Indiquez les valeurs suivantes :
SCOPE
: valeur obligatoire. Un champ d'application peut être un projet, un dossier ou une organisation. La recherche est limitée aux ressources Google Cloud de ce champ d'application. L'appelant doit disposer de l'autorisationcloudasset.assets.searchAllResources
sur le champ d'application sélectionné. Si aucune valeur n'est spécifiée, la propriété de projet configurée est utilisée.Les valeurs autorisées sont les suivantes :
projects/PROJECT_ID
projects/PROJECT_NUMBER
Trouver un numéro de projet Google Cloud
Console
Pour trouver un numéro de projet Google Cloud, procédez comme suit:
-
Accédez à la page Tableau de bord dans la console Google Cloud.
- Cliquez sur le sélecteur dans la barre de menu.
- Sélectionnez votre organisation dans la zone Sélectionner à partir de, puis recherchez le nom de votre projet.
- Cliquez sur le nom du projet pour basculer vers ce projet. Le numéro de projet est indiqué dans la fiche Informations sur le projet.
gcloud CLI
Vous pouvez récupérer un numéro de projet Google Cloud à l'aide de la commande suivante:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Trouver un ID de dossier Google Cloud
Console
Pour trouver un ID de dossier Google Cloud, procédez comme suit:
-
Accédez à Google Cloud Console.
- Cliquez sur le sélecteur dans la barre de menu.
- Cochez la case Sélectionner à partir de, puis sélectionnez votre organisation.
- Recherchez le nom de votre dossier. L'ID du dossier est indiqué à côté de son nom.
gcloud CLI
Vous pouvez récupérer un ID de dossier Google Cloud situé au niveau de l'organisation à l'aide de la commande suivante:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Où TOP_LEVEL_FOLDER_NAME peut être une correspondance de chaîne complète ou partielle. Supprimez l'option
--format
pour afficher plus d'informations sur les dossiers trouvés.Pour obtenir l'ID d'un dossier dans un autre dossier, répertoriez les sous-dossiers:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Trouver un ID d'organisation Google Cloud
Console
Pour trouver un ID d'organisation Google Cloud, procédez comme suit:
-
Accédez à Google Cloud Console.
- Cliquez sur le sélecteur dans la barre de menu.
- Cochez la case Sélectionner à partir de, puis sélectionnez votre organisation.
- Cliquez sur l'onglet Tous. L'ID de l'organisation est affiché à côté de son nom.
gcloud CLI
Vous pouvez récupérer un ID d'organisation Google Cloud à l'aide de la commande suivante:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
QUERY
: facultatif. Instruction de requête. Pour en savoir plus, consultez la section Syntaxe des requêtes. Si ce champ n'est pas spécifié ou vide, il recherche toutes les ressources dans lescope
spécifié.Exemples :
name:Important
pour rechercher les ressources Google Cloud dont le nom contient le motImportant
.name=Important
pour rechercher la ressource Google Cloud dont le nom est exactementImportant
.displayName:Impor*
pour rechercher les ressources Google Cloud dont le nom à afficher contientImpor
comme préfixe de n'importe quel mot.location:us-west*
pour rechercher les ressources Google Cloud dont l'emplacement comporte deux mots avec les préfixesus
etwest
.labels:prod
pour rechercher les ressources Google Cloud associées à un libellé dont la clé ou la valeur contient le motprod
.labels.env:prod
pour rechercher les ressources Google Cloud portant un libellé, où la clé estenv
et la valeur contient le motprod
.labels.env:*
pour rechercher les ressources Google Cloud portant un libellé dont la clé estenv
.tagKeys:env
pour rechercher les ressources Google Cloud directement associées aux tags, oùTagKey.namespacedName
contientenv
.tagKeyIds=tagKeys/123
pour rechercher les ressources Google Cloud directement associées aux tags, oùTagKey.name
est exactementtagKeys/123
.tagValues:prod*
pour rechercher les ressources Google Cloud directement associées à des tags, oùTagValue.namespacedName
contient un mot précédé deprod
.tagValueIds=tagValues/123
pour rechercher les ressources Google Cloud directement associées aux tags, oùTagValue.name
est exactementtagValues/123
.effectiveTagKeys:env
pour rechercher les ressources Google Cloud directement associées à des tags ou qui en héritent, oùTagKey.namespacedName
contientenv
.effectiveTagKeyIds=tagKeys/123
pour rechercher les ressources Google Cloud qui sont directement associées à des tags ou qui en héritent, oùTagKey.name
est exactementtagKeys/123
.effectiveTagValues:prod*
pour rechercher les ressources Google Cloud qui sont directement associées à des tags ou qui en héritent, oùTagValue.namespacedName
contient un mot précédé deprod
.effectiveTagValueIds=tagValues/123
pour rechercher les ressources Google Cloud qui sont directement associées à des tags ou qui en héritent, oùTagValue.name
est exactementtagValues/123
.kmsKeys:key
pour rechercher les ressources Google Cloud chiffrées à l'aide de clés de chiffrement gérées par le client dont le nom contient le motkey
.relationships:instance-group-1
pour rechercher les ressources Google Cloud qui ont des relations avecinstance-group-1
dans le nom de la ressource associée.relationships:INSTANCE_TO_INSTANCEGROUP
pour rechercher des instances Compute Engine ayant des relations de typeINSTANCE_TO_INSTANCEGROUP
.relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
pour rechercher les instances Compute Engine qui sont liées àinstance-group-1
dans le nom de ressource du groupe d'instances Compute Engine, pour le type de relationINSTANCE_TO_INSTANCEGROUP
.state:ACTIVE
pour rechercher les ressources Google Cloud dont l'état contientACTIVE
sous la forme d'un mot.NOT state:ACTIVE
pour rechercher les ressources Google Cloud dont l'état ne contient pasACTIVE
en tant que mot.createTime<1609459200
,createTime<2021-01-01
oucreateTime<"2021-01-01T00:00:00"
pour rechercher les ressources Google Cloud créées avant2021-01-01 00:00:00 UTC
.1609459200
est l'horodatage de l'epoch en secondes de2021-01-01 00:00:00 UTC
.updateTime>1609459200
,updateTime>2021-01-01
ouupdateTime>"2021-01-01T00:00:00"
pour rechercher les ressources Google Cloud mises à jour après2021-01-01 00:00:00 UTC
.1609459200
est l'horodatage de l'epoch en secondes de2021-01-01 00:00:00 UTC
.project:12345
pour rechercher les ressources Google Cloud appartenant à un projet Google Cloud portant le numéro12345
.folders:(123 or 456)
pour rechercher les ressources Google Cloud appartenant à un dossier Google Cloud portant les numéros123
ou456
.organization:123
pour rechercher les ressources Google Cloud appartenant à une organisation Google Cloud portant le numéro123
.parentFullResourceName:ImportantName
pour trouver les ressources Google Cloud dont le nom de parent contientImportantName
.parentAssetType:Project
pour rechercher les ressources Google Cloud dont le type d'élément parent contientProject
.Important
pour rechercher les ressources Google Cloud contenant le motImportant
dans l'un des champs inclus dans l'index de recherche.Impor*
pour rechercher les ressources Google Cloud contenantImpor
comme préfixe de n'importe quel mot dans l'un des champs inclus dans l'index de recherche.Important location:(us-west1 OR global)
pour rechercher les ressources Google Cloud contenant le motImportant
dans l'un des champs inclus dans l'index de recherche et qui sont également situées dans la régionus-west1
ou à l'emplacementglobal
.
ASSET_TYPE
: facultatif. Il s'agit de la liste des types d'éléments que cette demande recherche. Si ce champ est vide, la recherche est effectuée dans tous les types d'éléments inclus dans l'index de recherche. Les expressions régulières compatibles avec RE2 sont acceptées. Si l'expression régulière ne correspond à aucun type d'élément compatible, une erreurINVALID_ARGUMENT
est renvoyée.ORDER_BY
: facultatif. Liste de champs séparés par une virgule spécifiant l'ordre de tri des résultats. L'ordre par défaut est croissant. AjoutezDESC
après le nom du champ pour indiquer l'ordre décroissant. Les espaces vides sont ignorés. Exemple :"location DESC, name"
. Seuls les champs primitifs singuliers de la réponse peuvent être triés:name
assetType
project
displayName
description
location
createTime
updateTime
state
parentFullResourceName
parentAssetType
Les autres champs, tels que les champs répétés (par exemple,
networkTags
etkmsKeys
), les champs de mappage (par exemple,labels
) et les champs de structure (par exemple,additionalAttributes
) ne sont pas acceptés.READ_MASK
: facultatif. Liste de champs séparés par une virgule spécifiant les champs à renvoyer dans les résultats. Si aucune valeur n'est spécifiée, tous les champs, à l'exception deversionedResources
, sont renvoyés. Si seul"*"
est spécifié, tous les champs sont renvoyés. Exemples :"name,location"
,"name,versionedResources"
,"*"
.Les champs suivants sont renvoyés par défaut si
--read-mask
n'est pas spécifié:name
assetType
project
folders
organization
displayName
description
location
labels
tags
networkTags
kmsKeys
createTime
updateTime
state
additionalAttributes
parentFullResourceName
parentAssetType
Certains champs de grande taille, tels que
versionedResources
,attachedResources
eteffectiveTags
, ne sont pas renvoyés par défaut, mais vous pouvez les spécifier dans le paramètre--read-mask
si vous souhaitez les inclure. Si"*"
est spécifié, tous les champs disponibles sont renvoyés. Exemples:"name,location,effectiveTags"
,"name,versionedResources"
,"*"
.
Voici des exemples de commandes gcloud
:
Recherchez toutes les ressources dans
organizations/123456
dont le champname
contient le motmycompany
:gcloud asset search-all-resources \ --scope=organizations/123456 \ --query="name:mycompany"
Recherchez toutes les ressources dans
organizations/123456
dont le champname
contient le motmycompany
, avec des métadonnées complètes:gcloud asset search-all-resources \ --scope=organizations/123456 \ --query="name:mycompany" \ --read-mask="name,versionedResources"
REST
Vous pouvez appeler SearchAllResources
à l'aide d'un jeton OAuth valide pour un projet. Pour appeler la méthode SearchAllResources
à partir de Cloud Shell ou de toute console où la commande gcloud
est disponible, procédez comme suit :
Si vous n'avez pas configuré l'écran de consentement OAuth de votre projet, vous devez le faire. Vous devez indiquer une adresse e-mail et un nom de produit.
Accédez à la page Écran de consentement OAuth de votre projet.
Saisissez le nom de l'application que vous souhaitez afficher.
Sous Adresse e-mail d'assistance, sélectionnez l'adresse e-mail que vous souhaitez afficher en tant que contact public. Il doit s'agir de votre adresse e-mail ou d'un groupe Google dont vous êtes propriétaire.
Ajoutez des détails, si nécessaire.
Cliquez sur Enregistrer.
Créez un jeton OAuth pour votre projet. Pour en savoir plus, consultez la page Configurer OAuth 2.0.
Accédez à la page Créer un ID client OAuth.
Sélectionnez le Type d'application en choisissant Application de bureau.
Cliquez sur Créer.
Téléchargez le fichier
client_secret.json
.Accédez à la page Identifiants.
À droite de votre nouvel ID client, cliquez sur
Télécharger JSON.Stockez le fichier de manière sécurisée dans un emplacement auquel seule votre application peut accéder.
Connectez-vous à l'aide du fichier JSON avec la commande suivante.
gcloud auth application-default login --client-id-file=YOUR_JSON_FILE
Cette commande vous invite à ouvrir un lien. Assurez-vous que la page affiche le nom de l'application que vous avez défini dans votre écran de consentement OAuth.
Vous pouvez maintenant interroger des ressources à l'aide des commandes
curl
.curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "orderBy": "ORDER_BY", "pageSize": PAGE_SIZE, "query": "QUERY", "readMask": "READ_MASK" }' \ https://cloudasset.googleapis.com/v1/SCOPE:searchAllIamPolicies
Indiquez les valeurs suivantes :
ASSET_TYPE
: facultatif. Il s'agit de la liste des types d'éléments que cette demande recherche. Si ce champ est vide, la recherche est effectuée dans tous les types d'éléments inclus dans l'index de recherche. Les expressions régulières sont acceptées. Si l'expression régulière ne correspond à aucun type d'élément compatible, une erreurINVALID_ARGUMENT
est renvoyée.ORDER_BY
: facultatif. Liste de champs séparés par une virgule spécifiant l'ordre de tri des résultats. Par défaut, l'ordre est croissant. Ajoutez" DESC"
après le nom du champ pour indiquer l'ordre décroissant. Les espaces vides sont ignorés. Exemple :"location DESC, name"
. Seuls les champs primitifs singuliers de la réponse peuvent être triés :name
assetType
project
displayName
description
location
createTime
updateTime
state
parentFullResourceName
parentAssetType
Les autres champs, tels que les champs répétés (par exemple,
networkTags
etkmsKeys
), les champs de mappage (par exemple,labels
) et les champs de structure (par exemple,additionalAttributes
) ne sont pas acceptés.PAGE_SIZE
: facultatif. Nombre de résultats à renvoyer par page. Le maximum est de 500. Si la valeur est définie sur0
ou sur une valeur négative, une valeur par défaut appropriée est sélectionnée. UnnextPageToken
est renvoyé pour récupérer les résultats suivants.QUERY
: facultatif. Instruction de requête. Pour en savoir plus, consultez la section Syntaxe des requêtes. Si elle n'est pas spécifiée ou vide, elle recherche toutes les ressources dans lescope
spécifié.Exemples :
name:Important
pour trouver les ressources Google Cloud dont le nom contient le mot "Important".name=Important
pour trouver la ressource Google Cloud dont le nom est exactement "Important".displayName:Impor*
pour trouver les ressources Google Cloud dont le nom à afficher contient "Impor" en tant que préfixe d'un mot.location:us-west*
pour trouver les ressources Google Cloud dont l'emplacement contient les préfixes "us" et "west".labels:prod
pour trouver des ressources Google Cloud qui possèdent une étiquette dont la clé ou la valeur contient le mot "prod".labels.env:prod
pour trouver les ressources Google Cloud qui possèdent une étiquette dont la clé est "env" et la valeur contient le mot "prod".labels.env:*
pour trouver les ressources Google Cloud qui possèdent une étiquette dont la clé est "env".tagKeys:env
pour rechercher les ressources Google Cloud directement associées aux tags oùTagKey.namespacedName
contient "env".tagKeyIds=tagKeys/123
pour rechercher les ressources Google Cloud directement associées aux tags, oùTagKey.name
correspond exactement à "tagKeys/123".tagValues:prod*
pour rechercher les ressources Google Cloud directement associées aux tags, oùTagValue.namespacedName
contient un mot précédé de "prod".tagValueIds=tagValues/123
pour rechercher les ressources Google Cloud directement associées aux tags, oùTagValue.name
correspond exactement à "tagValues/123".effectiveTagKeys:env
pour rechercher les ressources Google Cloud directement associées à des tags ou qui en héritent, oùTagKey.namespacedName
contientenv
.effectiveTagKeyIds=tagKeys/123
pour rechercher les ressources Google Cloud qui sont directement associées à des tags ou qui en héritent, oùTagKey.name
est exactementtagKeys/123
.effectiveTagValues:prod*
pour rechercher les ressources Google Cloud qui sont directement associées à des tags ou qui en héritent, oùTagValue.namespacedName
contient un mot précédé deprod
.effectiveTagValueIds=tagValues/123
pour rechercher les ressources Google Cloud qui sont directement associées à des tags ou qui en héritent, oùTagValue.name
est exactementtagValues/123
.kmsKey:key
pour rechercher les ressources Google Cloud chiffrées avec une clé de chiffrement gérée par le client dont le nom contient le motkey
. Ce champ est obsolète. Veuillez utiliser le champkmsKeys
pour récupérer les informations de la clé Cloud KMS.kmsKeys:key
pour rechercher les ressources Google Cloud chiffrées à l'aide de clés de chiffrement gérées par le client dont le nom contient le mot "clé".relationships:instance-group-1
pour rechercher les ressources Google Cloud qui ont des relations avecinstance-group-1
dans le nom de la ressource associée.relationships:INSTANCE_TO_INSTANCEGROUP
pour rechercher des instances Compute Engine ayant des relations de typeINSTANCE_TO_INSTANCEGROUP
.relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
pour rechercher les instances Compute Engine qui sont liées àinstance-group-1
dans le nom de ressource du groupe d'instances Compute Engine, pour le type de relationINSTANCE_TO_INSTANCEGROUP
.state:ACTIVE
pour trouver les ressources Google Cloud dont l'état contient "ACTIVE" en tant que mot.NOT state:ACTIVE
pour rechercher les ressources Google Cloud dont l'état ne contient pas le mot "ACTIVE".createTime<1609459200
,createTime<2021-01-01
oucreateTime<"2021-01-01T00:00:00"
pour rechercher les ressources Google Cloud créées avant2021-01-01 00:00:00 UTC
.1609459200
est le code temporel de l'epoch, en secondes de2021-01-01 00:00:00 UTC
.updateTime>1609459200
,updateTime>2021-01-01
ouupdateTime>"2021-01-01T00:00:00"
pour rechercher les ressources Google Cloud mises à jour après2021-01-01 00:00:00 UTC
.1609459200
est le code temporel de l'epoch, en secondes de2021-01-01 00:00:00 UTC
.project:12345
pour trouver les ressources Google Cloud appartenant à un projet Google Cloud portant le numéro 12345.folders:(123 or 456)
pour trouver les ressources Google Cloud appartenant à un dossier Google Cloud portant le numéro 123 ou 456.organization:123
pour trouver les ressources Google Cloud appartenant à une organisation Google Cloud portant le numéro 123.parentFullResourceName:ImportantName
pour trouver les ressources Google Cloud dont le nom parent contientImportantName
.parentAssetType:Project
pour rechercher les ressources Google Cloud dont le type d'élément parent contientProject
.Important
pour trouver les ressources Google Cloud contenant le mot "Important" dans n'importe quel champ inclus dans l'index de recherche.Impor*
pour trouver les ressources Google Cloud qui contiennent "Impor" en tant que préfixe de mot dans l'un des champs pouvant faire l'objet d'une recherche.Important location:(us-west1 OR global)
pour rechercher des ressources Google Cloud contenant le motImportant
dans l'un des champs inclus dans l'index de recherche et qui se trouvent également dans la régionus-west1
ou à l'emplacementglobal
.
READ_MASK
: facultatif. Liste de champs séparés par une virgule spécifiant les champs à renvoyer dans les résultats. Si aucune valeur n'est spécifiée, tous les champs, à l'exception deversionedResources
, sont renvoyés. Si seul"*"
est spécifié, tous les champs sont renvoyés. Exemples :"name,location"
,"name,versionedResources"
,"*"
.Les champs suivants sont renvoyés par défaut si
read_mask
n'est pas spécifié:name
assetType
project
folders
organization
displayName
description
location
labels
tags
networkTags
kmsKeys
createTime
updateTime
state
additionalAttributes
parentFullResourceName
parentAssetType
Certains champs de grande taille, tels que
versionedResources
,attachedResources
eteffectiveTags
, ne sont pas renvoyés par défaut, mais vous pouvez les spécifier dans le paramètreread_mask
si vous souhaitez les inclure. Si"*"
est spécifié, tous les champs disponibles sont renvoyés. Exemples:"name,location,effectiveTags"
,"name,versionedResources"
,"*"
.SCOPE
: un champ d'application peut être un projet, un dossier ou une organisation. La recherche est limitée aux ressources Google Cloud de ce champ d'application. L'appelant doit disposer de l'autorisationcloudasset.assets.searchAllResources
sur le champ d'application sélectionné. Si aucune valeur n'est spécifiée, la propriété de projet configurée est utilisée.Les valeurs autorisées sont les suivantes :
projects/PROJECT_ID
projects/PROJECT_NUMBER
Trouver un numéro de projet Google Cloud
Console
Pour trouver un numéro de projet Google Cloud, procédez comme suit:
-
Accédez à la page Tableau de bord dans la console Google Cloud.
- Cliquez sur le sélecteur dans la barre de menu.
- Sélectionnez votre organisation dans la zone Sélectionner à partir de, puis recherchez le nom de votre projet.
- Cliquez sur le nom du projet pour basculer vers ce projet. Le numéro de projet est indiqué dans la fiche Informations sur le projet.
gcloud CLI
Vous pouvez récupérer un numéro de projet Google Cloud à l'aide de la commande suivante:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Trouver un ID de dossier Google Cloud
Console
Pour trouver un ID de dossier Google Cloud, procédez comme suit:
-
Accédez à Google Cloud Console.
- Cliquez sur le sélecteur dans la barre de menu.
- Cochez la case Sélectionner à partir de, puis sélectionnez votre organisation.
- Recherchez le nom de votre dossier. L'ID du dossier est indiqué à côté de son nom.
gcloud CLI
Vous pouvez récupérer un ID de dossier Google Cloud situé au niveau de l'organisation à l'aide de la commande suivante:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Où TOP_LEVEL_FOLDER_NAME peut être une correspondance de chaîne complète ou partielle. Supprimez l'option
--format
pour afficher plus d'informations sur les dossiers trouvés.Pour obtenir l'ID d'un dossier dans un autre dossier, répertoriez les sous-dossiers:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Trouver un ID d'organisation Google Cloud
Console
Pour trouver un ID d'organisation Google Cloud, procédez comme suit:
-
Accédez à Google Cloud Console.
- Cliquez sur le sélecteur dans la barre de menu.
- Cochez la case Sélectionner à partir de, puis sélectionnez votre organisation.
- Cliquez sur l'onglet Tous. L'ID de l'organisation est affiché à côté de son nom.
gcloud CLI
Vous pouvez récupérer un ID d'organisation Google Cloud à l'aide de la commande suivante:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Documentation de référence sur la bibliothèque cliente et l'API
SearchAllResources
Comment construire une requête
Consultez la section Syntaxe des requêtes pour en savoir plus sur le langage de requête.
Consultez la section Rechercher des exemples de ressources pour en savoir plus sur les exemples de requêtes pour divers cas d'utilisation réels.
Interroger les ressources Google Cloud par champs de métadonnées de ressource
Pour rechercher des métadonnées de ressource, une expression de requête est au format suivant :
Mot clé exact textuel:
FIELD=QUERY
Correspondance partielle de texte:
FIELD:QUERY
Correspondance numérique: opérateurs de comparaison (
=
,>
,>=
,<
,<=
)FIELDcomparison operatorQUERY
Une métadonnée de ressource pouvant faire l'objet d'une recherche FIELD
peut être :
name:nom complet de la ressource. Remarque : tous les types d'éléments ne peuvent pas faire l'objet d'une recherche. Consultez la liste des types inclus dans l'index de recherche.
displayName::nom à afficher dans l'interface utilisateur.
description:description textuelle de la ressource en un ou plusieurs paragraphes.
location:emplacement de la ressource. L'emplacement peut être
global
, régional (par exemple,us-east1
) ou zonal (par exemple,us-west1-b
).labels:étiquettes associées à cette ressource. Les étiquettes peuvent correspondre à des clés d'étiquette, à des valeurs d'étiquette ou aux deux. Consultez la section Ajouter des libellés et regrouper des ressources Google Cloud Platform.
labels.[key]: : valeur de libellé identifiée par la clé de libellé associée à cette ressource. Exemple :
labels.env:prod
. Seuls les traits d'union (-
), les traits de soulignement (_
), les minuscules et les chiffres sont autorisés dans les clés de libellé. Les clés doivent commencer par une lettre minuscule. Les caractères internationaux sont acceptés. Consultez la section Exigences concernant les libellés.tagKeys::
TagKey.namespacedName
des tags directement associés à cette ressource.tagKeyIds:
TagKey.name
des tags directement associés à cette ressource.tagValues::
TagValue.namespacedName
des tags directement associés à cette ressource.tagValueIds:
TagValue.name
des tags directement associés à cette ressource.effectiveTagKeys:
TagKey.namespacedName
des tags directement associés ou hérités à cette ressource.effectiveTagKeyIds:
TagKey.name
des tags directement associés ou hérités à cette ressource.effectiveTagValues:
TagValue.namespacedName
des tags directement associés ou hérités à cette ressource.effectiveTagValueIds:
TagValue.name
des tags directement associés ou hérités à cette ressource.
networkTags:tags réseau associés à cette ressource. Consultez la section Ajouter des libellés et regrouper des ressources Google Cloud Platform.
kmsKey:clé de chiffrement gérée par le client utilisée pour chiffrer cette ressource. Ce champ est obsolète. Veuillez utiliser le champ
kmsKeys
pour récupérer les informations de clé Cloud KMS. Consultez CryptoKey et CryptoKeyVersion.kmsKeys:clés de chiffrement gérées par le client utilisées pour chiffrer cette ressource. Consultez CryptoKey et CryptoKeyVersion.
relations:relations associées à cette ressource Les relations peuvent correspondre au type de relation, au nom de ressource associé ou aux deux. Consultez la section Types de relations acceptés.
relationships.[relationship_type]: : nom de ressource correspondant à un type de ressource particulier associé à cette ressource Exemple :
relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
. Consultez la section Types de relations acceptés.sccSecurityMarks:contenu réel des marques de sécurité Security Command Center associées à l'élément. Exemple :
sccSecurityMarks.foo:bar
. Consultez Types d'éléments compatibles dans Security Command Center.state::valeur textuelle de l'état de cette ressource. Les définitions d'état varient en fonction du type de ressource, qui est mappée à partir de différents champs de types de ressources différents. Exemple: Si la ressource est une instance fournie par Compute Engine, son état inclut
PROVISIONING
,STAGING
,RUNNING
,STOPPING
,SUSPENDING
,SUSPENDED
,REPAIRING
etTERMINATED
. Consultez la définition destatus
dans la documentation de référence de l'API. Si la ressource est un projet fourni par Cloud Resource Manager, son état inclutLIFECYCLE_STATE_UNSPECIFIED
,ACTIVE
,DELETE_REQUESTED
etDELETE_IN_PROGRESS
. Consultez la définition delifecycleState
dans la documentation de référence de l'API.createTime::l'horodatage de création de la ressource, à laquelle la ressource a été créée. La précision est exprimée en secondes.
updateTime::horodatage de la dernière mise à jour de cette ressource, à laquelle elle a été modifiée ou supprimée pour la dernière fois. La précision est exprimée en secondes.
project (projet) : numéro du projet auquel cette ressource appartient.
folders:nombre de dossiers auxquels cette ressource appartient.
organization:numéro de l'organisation à laquelle appartient cette ressource.
parentFullResourceName:nom du parent de cette ressource.
parentAssetType:type du parent de cette ressource.
Exemples : requête par champ spécifique
Recherchez toutes les ressources dans votre
scope
dont lename
contient le motImportant
:name:Important
Recherchez toutes les ressources de votre
scope
dont le champdisplayName
contient un mot avec le préfixeprod
:displayName:prod*
Recherchez toutes les ressources dans votre
scope
dont lelocation
contientus
:location:us
Recherchez toutes les ressources dans votre
scope
dont le champlocation
contient exactementus
:location=us
Recherchez toutes les ressources de votre
scope
qui sont directement associées à des tags avecTagKey.namespacedName
contenant le motenv
:tagKeys:env
Recherchez toutes les ressources de votre
scope
auxquelles des tags sont directement associés, et dont le nomTagKey.name
correspond exactement àtagKeys/123
:tagKeyIds=tagKeys/123
Recherchez toutes les ressources de votre
scope
auxquelles des tags sont directement associés, avecTagValue.namespacedName
contenant un mot précédé deprod
:tagValues:prod*
Recherchez toutes les ressources de votre
scope
auxquelles des tags sont directement associés, et dont le nomTagValue.name
correspond exactement àtagValues/123
:tagValueIds=tagValues/123
Recherchez toutes les ressources de votre
scope
auxquelles des tags sont directement associés avecTagValue.namespacedName
.tagValues:*
Recherchez toutes les ressources de votre
scope
qui ont des tags directement associés ou hérités avecTagKey.namespacedName
contenant le motenv
:effectiveTagKeys:env
Recherchez toutes les ressources de votre
scope
ayant des tags directement associés ou hérités, dont le nomTagKey.name
correspond exactement àtagKeys/123
:effectiveTagKeyIds=tagKeys/123
Recherchez toutes les ressources de votre
scope
qui sont directement associées ou héritées de tags avecTagValue.namespacedName
contenant un mot précédé deprod
:effectiveTagValues:prod*
Recherchez toutes les ressources de votre
scope
ayant des tags directement associés ou hérités, dont le nomTagValue.name
correspond exactement àtagValues/123
:effectiveTagValueIds=tagValues/123
Recherchez toutes les ressources de votre
scope
qui ont des tags directement associés ou hérités avecTagValue.namespacedName
.effectivetagValues:*
Recherchez toutes les ressources de votre
scope
ayant unlabel
dont la clé ou la valeur contient le motprod
:labels:prod
Recherchez toutes les ressources de votre
scope
qui ont unlabel
où la clé estenv
et la valeur contient le motprod
:labels.env:prod
Recherchez toutes les ressources de votre
scope
ayant unlabel
où la clé estenv
et la valeur exactement égale àprod
:labels.env=prod
Recherchez toutes les ressources dans votre
scope
qui ont unlabel
où la clé estenv
:labels.env:*
Recherchez toutes les ressources dans votre
scope
dont l'une des ressourcesnetworkTags
contient le motinternal
:networkTags:internal
Recherchez dans votre fichier
scope
toutes les ressources dont l'une des ressourcesnetworkTags
correspond exactement àinternal
:networkTags=internal
Recherchez toutes les ressources de votre
scope
qui sont en relation avecinstance-group-1
dans le nom de ressource associé:relationships:instance-group-1
Recherchez les instances de calcul dans votre
scope
qui ont des relations de typeINSTANCE_TO_INSTANCEGROUP
:relationships:INSTANCE_TO_INSTANCEGROUP
Recherchez les instances de calcul dans votre
scope
qui sont liées àinstance-group-1
dans le nom de ressource du groupe d'instances de calcul, pour le type de relationINSTANCE_TO_INSTANCEGROUP
:relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
Recherchez toutes les ressources dans votre
scope
dont lekmsKeys
contientkey
:kmsKeys:key
Recherchez toutes les ressources dans votre
scope
dont le champkmsKeys
contient exactementkey
:kmsKeys=key
Recherchez toutes les ressources de votre fichier
scope
dont le champsccSecurityMarks
contient la paire clé-valeur exacte(key, value)
:sccSecurityMarks.key=value
Recherchez toutes les ressources de votre fichier
scope
dont le champsccSecurityMarks
contient la paire clé/valeur où la clé estkey
:sccSecurityMarks.key:*
Recherchez toutes les ressources dans votre
scope
dont lestate
contientACTIVE
:state:ACTIVE
Recherchez toutes les ressources dans votre
scope
dont lestate
ne contient pasACTIVE
:NOT state:ACTIVE
Recherchez toutes les ressources de votre
scope
qui ont été créées avant2021-01-01 00:00:00 UTC
(1609459200
correspond au code temporel de l'epoch en secondes de2021-01-01 00:00:00 UTC
):createTime<1609459200 createTime<2021-01-01 createTime<"2021-01-01T00:00:00"
Recherchez toutes les ressources de votre
scope
qui ont été mises à jour après2021-01-01 00:00:00 UTC
(1609459200
correspond au code temporel de l'epoch en secondes de2021-01-01 00:00:00 UTC
):updateTime>1609459200 updateTime>2021-01-01 updateTime>"2021-01-01T00:00:00"
Recherchez toutes les ressources dans votre
scope
dont leproject
contient le numéro123
:project:123
Recherchez toutes les ressources de votre
scope
contenues dansfolder
portant le numéro123
:folders:123
Recherchez toutes les ressources dans votre
scope
dont leorganization
contient le numéro123
:organization:123
Recherchez toutes les ressources dans votre
scope
dont leparentFullResourceName
contientImportantName
:parentFullResourceName:ImportantName
Recherchez toutes les ressources dans votre
scope
dont leparentAssetType
contientProject
:parentAssetType:Project
Recherchez toutes les ressources de votre fichier
scope
dont le champname
contient le motImportant
etdescription
contient un mot commençant parimport
:name:Important description:import*
Recherchez toutes les ressources de votre
scope
dont le champname
contient le motImportant
oudescription
contient un mot commençant parimport
:name:Important OR description:import*
Interroger les ressources Google Cloud par texte libre
Vous pouvez également utiliser une requête en texte libre sans spécifier de champ. Elle renvoie ensuite des ressources, à condition qu'un champ des métadonnées de ressources corresponde à la requête.
Exemples : requête par texte libre
Recherchez toutes les ressources de votre
scope
dont les champs de métadonnées (par exemple,name
,displayName
,description
) contiennent le motImportant
:Important
Recherchez toutes les ressources de votre fichier
scope
dont les champs de métadonnées (par exemple,name
,displayName
,description
) contiennent un mot commençant parimport
:import*
Recherchez toutes les ressources de votre fichier
scope
dont les champs de métadonnées (par exemple,name
,displayName
,description
) contiennent le motImportant
ainsi qu'un mot commençant par le préfixeprod
:Important prod*