借助 Cloud Asset API,您可以使用自定义查询语言来查询项目、文件夹或组织的资源元数据。
准备工作
为您的项目启用 Cloud Asset API。
向发出请求的用户帐号或服务帐号授予
cloudasset.assets.searchAllResources
权限。Roles
中列出的基本角色和预定义角色中包含此权限。
搜索资源
控制台
如需搜索所有资源,请完成以下步骤。
前往 Google Cloud 控制台中的 Asset Inventory 页面。
要设置搜索范围,请打开菜单栏中的“项目”列表框,然后选择要查询的组织、文件夹或项目。
选择资源标签页。
如需搜索资源,请在过滤条件栏中输入查询文本。选择文本框,然后系统会显示可搜索字段的列表。资源搜索支持多个字段。详细了解查询语法。
搜索结果也可以按过滤结果窗格中预定义的资源类型、项目和位置过滤条件进行过滤。
结果表中会列出与查询匹配的资源。
如需以 Google Cloud CLI 命令的形式来查看查询,请选择查看查询。
如需导出结果,请选择下载 CSV。
gcloud
您可以使用 gcloud asset search-all-resources
命令调用 SearchAllResources
。您必须运行 Google Cloud CLI 302.0.0 或更新版本。您可以使用 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
请提供以下值:
SCOPE
:必填。范围可以是项目、文件夹或组织。搜索范围仅限于此范围内的 Google Cloud 资源。必须向调用方授予所选范围的cloudasset.assets.searchAllResources
权限。如果未指定,系统会使用已配置的项目属性。允许使用的值包括:
projects/PROJECT_ID
projects/PROJECT_NUMBER
如何查找 Google Cloud 项目编号
控制台
如需查找 Google Cloud 项目编号,请完成以下步骤:
-
前往 Google Cloud 控制台中的信息中心页面。
- 点击菜单栏中的切换器框。
- 从请选择:框中选择您的组织,然后搜索项目名称。
- 点击项目名称以切换到该项目。项目编号会显示在项目信息卡片中。
gcloud CLI
您可以使用以下命令检索 Google Cloud 项目编号:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
如何查找 Google Cloud 文件夹 ID
控制台
如需查找 Google Cloud 文件夹 ID,请完成以下步骤:
-
转到 Google Cloud 控制台。
- 点击菜单栏中的切换器框。
- 点击请选择:复选框,然后选择您的组织。
- 搜索您的文件夹名称。文件夹 ID 会显示在文件夹名称旁边。
gcloud CLI
您可以使用以下命令检索位于组织级别的 Google Cloud 文件夹 ID:
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)"
其中,TOP_LEVEL_FOLDER_NAME 可以是完整的字符串匹配,也可以是部分字符串匹配。移除
--format
选项可查看有关所找到文件夹的更多信息。要获取其他文件夹中的文件夹的 ID,请列出子文件夹:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
如何查找 Google Cloud 组织 ID
控制台
如需查找 Google Cloud 组织 ID,请完成以下步骤:
-
转到 Google Cloud 控制台。
- 点击菜单栏中的切换器框。
- 点击请选择:复选框,然后选择您的组织。
- 点击全部标签页。组织 ID 显示在组织名称旁边。
gcloud CLI
您可以使用以下命令检索 Google Cloud 组织 ID:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
QUERY
:可选。查询语句。如需了解详情,请参阅查询语法。 如果未指定或为空,则会搜索指定scope
中的所有资源。示例:
name:Important
,用于查找名称中包含Important
一词的 Google Cloud 资源。name=Important
,用于查找名称正好为Important
的 Google Cloud 资源。displayName:Impor*
,用于查找显示名称包含Impor
作为任意字词前缀的 Google Cloud 资源。location:us-west*
,用于查找位置包含两个以us
和west
为前缀的单词的 Google Cloud 资源。labels:prod
,用于查找键或值包含prod
一词的标签的 Google Cloud 资源。labels.env:prod
,用于查找具有标签且键为env
且值包含prod
一词的 Google Cloud 资源。labels.env:*
,用于查找具有标签且键为env
的 Google Cloud 资源。tagKeys:env
,用于查找直接附加到标记的 Google Cloud 资源(其中TagKey.namespacedName
包含env
)。tagKeyIds=tagKeys/123
,用于查找直接附加到标记(其中TagKey.name
正好为tagKeys/123
)的 Google Cloud 资源。tagValues:prod*
,用于查找直接附加到标记的 Google Cloud 资源,其中TagValue.namespacedName
包含以prod
为前缀的字词。tagValueIds=tagValues/123
,用于查找直接附加到标记(其中TagValue.name
正好为tagValues/123
)的 Google Cloud 资源。effectiveTagKeys:env
,用于查找直接附加到或继承在TagKey.namespacedName
包含env
的标记中的 Google Cloud 资源。effectiveTagKeyIds=tagKeys/123
,用于查找直接附加到或继承TagKey.name
为tagKeys/123
的标记的 Google Cloud 资源。effectiveTagValues:prod*
,用于查找直接附加到或继承标记(其中TagValue.namespacedName
包含以prod
为前缀的字词)的 Google Cloud 资源。effectiveTagValueIds=tagValues/123
,用于查找直接附加到或继承TagValue.name
为tagValues/123
的标记的 Google Cloud 资源。kmsKeys:key
,用于查找使用客户管理的加密密钥(名称中包含key
一词)加密的 Google Cloud 资源。relationships:instance-group-1
,用于查找与相关资源名称中的instance-group-1
有关系的 Google Cloud 资源。relationships:INSTANCE_TO_INSTANCEGROUP
,用于查找关系类型为INSTANCE_TO_INSTANCEGROUP
的 Compute Engine 实例。relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
,用于查找与 Compute Engine 实例组资源名称中的instance-group-1
有关系的 Compute Engine 实例(对于关系类型INSTANCE_TO_INSTANCEGROUP
)。state:ACTIVE
,用于查找状态包含ACTIVE
一词的 Google Cloud 资源。NOT state:ACTIVE
,用于查找状态不包含ACTIVE
一词的 Google Cloud 资源。createTime<1609459200
、createTime<2021-01-01
或createTime<"2021-01-01T00:00:00"
,用于查找在2021-01-01 00:00:00 UTC
之前创建的 Google Cloud 资源。1609459200
是2021-01-01 00:00:00 UTC
的纪元时间戳(以秒为单位)。updateTime>1609459200
、updateTime>2021-01-01
或updateTime>"2021-01-01T00:00:00"
,用于查找在2021-01-01 00:00:00 UTC
之后更新的 Google Cloud 资源。1609459200
是2021-01-01 00:00:00 UTC
的纪元时间戳(以秒为单位)。project:12345
,用于查找属于编号为12345
的 Google Cloud 项目的 Google Cloud 资源。folders:(123 or 456)
,用于查找属于编号为123
或456
的 Google Cloud 文件夹的 Google Cloud 资源。organization:123
,用于查找属于编号为123
的 Google Cloud 组织的 Google Cloud 资源。parentFullResourceName:ImportantName
,查找其父级名称中包含ImportantName
的 Google Cloud 资源。parentAssetType:Project
,用于查找父级资源类型包含Project
的 Google Cloud 资源。Important
,用于查找任何可搜索字段中包含Important
一词的 Google Cloud 资源。Impor*
,用于查找任何可搜索字段中任何字词的前缀Impor
的 Google Cloud 资源。Important location:(us-west1 OR global)
,用于查找任何可搜索字段中包含Important
一词且也位于us-west1
区域或global
位置的 Google Cloud 资源。
ASSET_TYPE
:可选。此请求搜索的资源类型列表。如果为空,则搜索所有可搜索的素材资源类型。支持与 RE2 兼容的正则表达式。如果正则表达式与任何受支持的资源类型都不匹配,系统会返回INVALID_ARGUMENT
错误。ORDER_BY
:可选。以英文逗号分隔的字段列表,用于指定结果的排序顺序。默认顺序是升序。在字段名称后面添加DESC
以表示降序。多余空格会被忽略。示例:"location DESC, name"
。只有响应中的单数原始字段可排序:name
assetType
project
displayName
description
location
createTime
updateTime
state
parentFullResourceName
parentAssetType
重复字段(例如
networkTags
、kmsKeys
)、映射字段(例如labels
)和结构体字段(例如additionalAttributes
)等其他字段不受支持。READ_MASK
:可选。以英文逗号分隔的字段列表,指定要在结果中返回的字段。如果未指定,则系统会返回除versionedResources
之外的所有字段。如果仅指定"*"
,则返回所有字段。示例:"name,location"
、"name,versionedResources"
、"*"
。如果未指定
--read-mask
,系统会默认返回以下字段:name
assetType
project
folders
organization
displayName
description
location
labels
tags
networkTags
kmsKeys
createTime
updateTime
state
additionalAttributes
parentFullResourceName
parentAssetType
默认情况下,系统不会返回某些较大的字段(例如
versionedResources
、attachedResources
和effectiveTags
),但如果您想包含这些字段,可以在--read-mask
参数中指定这些字段。如果指定了"*"
,系统会返回所有可用字段。示例:"name,location,effectiveTags"
、"name,versionedResources"
、"*"
。
以下是一个示例 gcloud
命令:
查找
organizations/123456
中name
包含mycompany
一词的所有资源:gcloud asset search-all-resources \ --scope=organizations/123456 \ --query="name:mycompany"
查找
organizations/123456
中name
包含mycompany
一词且包含完整元数据的所有资源:gcloud asset search-all-resources \ --scope=organizations/123456 \ --query="name:mycompany" \ --read-mask="name,versionedResources"
REST
您可以使用项目的有效 OAuth 令牌调用 SearchAllResources
。要从 Cloud Shell 或可使用 gcloud
命令的任何控制台调用 SearchAllResources
方法,请执行以下操作:
如果您尚未配置项目的 OAuth 同意屏幕,则需要执行此操作。OAuth 同意屏幕需要电子邮件地址和产品名称。
转到项目的 OAuth 同意屏幕页面。
输入您要显示的应用名称。
在支持电子邮件地址下,选择要显示为公开联系人的电子邮件地址。这必须是您的电子邮件地址或您拥有的某个 Google 群组。
根据需要添加任何可选详细信息。
点击保存。
为您的项目创建 OAuth 令牌。如需了解详情,请参阅设置 OAuth 2.0。
前往创建 OAuth 客户端 ID 页面。
选择桌面应用作为应用类型。
点击创建。
下载
client_secret.json
文件。转到凭据页面。
在新客户端 ID 的右侧,点击
下载 JSON。将文件安全地存储在只有您的应用可以访问的位置。
通过以下命令使用 JSON 文件登录。
gcloud auth application-default login --client-id-file=YOUR_JSON_FILE
此命令会提示您打开链接。确保该页面显示了您在 OAuth 同意屏幕中设置的应用名称。
您现在可以使用
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
请提供以下值:
ASSET_TYPE
:可选。此请求搜索的资源类型列表。如果为空,则搜索所有可搜索的素材资源类型。支持正则表达式。如果正则表达式与任何受支持的资源类型都不匹配,则会返回INVALID_ARGUMENT
错误。ORDER_BY
:可选。以英文逗号分隔的字段列表,用于指定结果的排序顺序。默认顺序为升序。在字段名称后面添加" DESC"
以指示降序。多余空格会被忽略。示例:"location DESC, name"
。响应中只有单一原始字段是可排序的:name
assetType
project
displayName
description
location
createTime
updateTime
state
parentFullResourceName
parentAssetType
重复字段(例如
networkTags
、kmsKeys
)、映射字段(例如labels
)和结构体字段(例如additionalAttributes
)等其他字段不受支持。PAGE_SIZE
:可选。每页返回的结果数。最大值是 500。如果值设为0
或负值,将选择相应的默认值。系统会返回nextPageToken
以检索后续结果。QUERY
:可选。查询语句。如需了解详情,请参阅查询语法。如果未指定或为空,则会搜索指定scope
中的所有资源。示例:
name:Important
,查找名称包含“Important”一词的 Google Cloud 资源。name=Important
,查找名称正好为“Important”的 Google Cloud 资源。displayName:Impor*
,以查找显示名包含“Impor”作为任何词前缀的 Google Cloud 资源。location:us-west*
,用于查找位置同时包含“us”和“west”为前缀的 Google Cloud 资源。labels:prod
,查找所含标签的键或值包含“prod”一词的 Google Cloud 资源。labels.env:prod
,查找所含标签的键为“env”且值包含“prod”的 Google Cloud 资源。labels.env:*
,查找所含标签的键为“env”的 Google Cloud 资源。tagKeys:env
,用于查找直接关联到TagKey.namespacedName
包含“env”的标记的 Google Cloud 资源。tagKeyIds=tagKeys/123
,用于查找直接附加到标记的 Google Cloud 资源,其中TagKey.name
恰好是“tagKeys/123”。tagValues:prod*
,用于查找直接附加到标记的 Google Cloud 资源,其中TagValue.namespacedName
包含以“prod”为前缀的字词。tagValueIds=tagValues/123
,用于查找直接附加到标记的 Google Cloud 资源,其中TagValue.name
恰好是“tagValues/123”。effectiveTagKeys:env
,用于查找直接附加到或继承在TagKey.namespacedName
包含env
的标记中的 Google Cloud 资源。effectiveTagKeyIds=tagKeys/123
,用于查找直接附加到或继承TagKey.name
为tagKeys/123
的标记的 Google Cloud 资源。effectiveTagValues:prod*
,用于查找直接附加到或继承标记(其中TagValue.namespacedName
包含以prod
为前缀的字词)的 Google Cloud 资源。effectiveTagValueIds=tagValues/123
,用于查找直接附加到或继承TagValue.name
为tagValues/123
的标记的 Google Cloud 资源。kmsKey:key
,用于查找使用客户管理的加密密钥(名称中包含key
这个词)加密的 Google Cloud 资源。此字段已弃用。请使用kmsKeys
字段检索 Cloud KMS 密钥信息。kmsKeys:key
,用于查找使用客户管理的加密密钥(名称中包含“key”一词)加密的 Google Cloud 资源。relationships:instance-group-1
,用于查找与相关资源名称中的instance-group-1
有关系的 Google Cloud 资源。relationships:INSTANCE_TO_INSTANCEGROUP
,用于查找关系类型为INSTANCE_TO_INSTANCEGROUP
的 Compute Engine 实例。relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
,用于查找与 Compute Engine 实例组资源名称中的instance-group-1
有关系的 Compute Engine 实例(对于关系类型INSTANCE_TO_INSTANCEGROUP
)。state:ACTIVE
,查找状态包含“ACTIVE”这个词的 Google Cloud 资源。NOT state:ACTIVE
,用于查找状态中不包含“ACTIVE”一词的 Google Cloud 资源。createTime<1609459200
、createTime<2021-01-01
或createTime<"2021-01-01T00:00:00"
,用于查找在2021-01-01 00:00:00 UTC
之前创建的 Google Cloud 资源。1609459200
是2021-01-01 00:00:00 UTC
的纪元时间戳(以秒为单位)。updateTime>1609459200
、updateTime>2021-01-01
或updateTime>"2021-01-01T00:00:00"
,用于查找在2021-01-01 00:00:00 UTC
之后更新的 Google Cloud 资源。1609459200
是2021-01-01 00:00:00 UTC
的纪元时间戳(以秒为单位)。project:12345
,查找属于编号为 12345 的 Google Cloud 项目的 Google Cloud 资源。folders:(123 or 456)
,查找属于编号为 123 或 456 的 Google Cloud 文件夹的 Google Cloud 资源。organization:123
,查找属于编号为 123 的 Google Cloud 组织的 Google Cloud 资源。parentFullResourceName:ImportantName
,查找其父级名称中包含ImportantName
的 Google Cloud 资源。parentAssetType:Project
,用于查找父级资产类型包含Project
的 Google Cloud 资源。Important
,查找任何可搜索字段中包含一词“Important”的 Google Cloud 资源。Impor*
,以查找包含以“Impr”作为任何可搜索字段中任何词前缀的 Google Cloud 资源。Important location:(us-west1 OR global)
,用于查找任何可搜索字段中包含Important
一词且也位于us-west1
区域或global
位置的 Google Cloud 资源。
READ_MASK
:可选。以英文逗号分隔的字段列表,用于指定要在结果中返回的字段。如果未指定,则系统会返回除versionedResources
之外的所有字段。如果仅指定了"*"
,则返回所有字段。示例:"name,location"
、"name,versionedResources"
、"*"
。如果未指定
read_mask
,系统会默认返回以下字段:name
assetType
project
folders
organization
displayName
description
location
labels
tags
networkTags
kmsKeys
createTime
updateTime
state
additionalAttributes
parentFullResourceName
parentAssetType
默认情况下,系统不会返回某些较大的字段(例如
versionedResources
、attachedResources
和effectiveTags
),但如果需要包含这些字段,您可以在read_mask
参数中指定这些字段。如果指定了"*"
,系统会返回所有可用字段。示例:"name,location,effectiveTags"
、"name,versionedResources"
、"*"
。SCOPE
:范围可以是项目、文件夹或组织。搜索范围仅限于此范围内的 Google Cloud 资源。必须向调用方授予所选范围的cloudasset.assets.searchAllResources
权限。如果未指定,系统会使用已配置的项目属性。允许使用的值包括:
projects/PROJECT_ID
projects/PROJECT_NUMBER
如何查找 Google Cloud 项目编号
控制台
如需查找 Google Cloud 项目编号,请完成以下步骤:
-
前往 Google Cloud 控制台中的信息中心页面。
- 点击菜单栏中的切换器框。
- 从请选择:框中选择您的组织,然后搜索项目名称。
- 点击项目名称以切换到该项目。项目编号会显示在项目信息卡片中。
gcloud CLI
您可以使用以下命令检索 Google Cloud 项目编号:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
如何查找 Google Cloud 文件夹 ID
控制台
如需查找 Google Cloud 文件夹 ID,请完成以下步骤:
-
转到 Google Cloud 控制台。
- 点击菜单栏中的切换器框。
- 点击请选择:复选框,然后选择您的组织。
- 搜索您的文件夹名称。文件夹 ID 会显示在文件夹名称旁边。
gcloud CLI
您可以使用以下命令检索位于组织级别的 Google Cloud 文件夹 ID:
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)"
其中,TOP_LEVEL_FOLDER_NAME 可以是完整的字符串匹配,也可以是部分字符串匹配。移除
--format
选项可查看有关所找到文件夹的更多信息。要获取其他文件夹中的文件夹的 ID,请列出子文件夹:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
如何查找 Google Cloud 组织 ID
控制台
如需查找 Google Cloud 组织 ID,请完成以下步骤:
-
转到 Google Cloud 控制台。
- 点击菜单栏中的切换器框。
- 点击请选择:复选框,然后选择您的组织。
- 点击全部标签页。组织 ID 显示在组织名称旁边。
gcloud CLI
您可以使用以下命令检索 Google Cloud 组织 ID:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
客户端库和 API 参考文档
如何构建查询
如需详细了解查询语言,请参阅查询语法。
如需详细了解各种实际用例的查询示例,请参阅搜索资源示例。
按资源元数据字段查询 Google Cloud 资源
如需搜索资源元数据,查询表达式需采用以下格式:
文字完全匹配:
FIELD=QUERY
文字部分匹配:
FIELD:QUERY
数值匹配:比较运算符(
=
、>
、>=
、<
、<=
)FIELDcomparison operatorQUERY
可搜索的资源元数据 FIELD
可以是:
displayName::界面上的显示名。
description:一个或多个段落中的资源的文本说明。
location:资源的位置。位置可以是
global
、区域级(例如us-east1
)或可用区级(例如us-west1-b
)。labels:与此资源关联的标签。标签可以与标签键和/或标签值匹配。请参阅为 Google Cloud Platform 资源添加标签和分组。
labels.[key]::由与此资源关联的标签键标识的标签值。例如:
labels.env:prod
。标签键中只能使用连字符 (-
)、下划线 (_
)、小写字符和数字。键必须以小写字符开头。允许使用国际字符。请参阅标签要求。tagKeys::直接附加到此资源的标记的
TagKey.namespacedName
。tagKeyIds:直接附加到此资源的标记的
TagKey.name
。tagValues::直接附加到此资源的标记的
TagValue.namespacedName
。tagValueIds:直接附加到此资源的标记的
TagValue.name
。effectiveTagKeys:直接附加或继承到此资源的标记的
TagKey.namespacedName
。effectiveTagKeyIds:直接附加到或继承到此资源的标记的
TagKey.name
。effectiveTagValues:直接附加或继承到此资源的标记的
TagValue.namespacedName
。effectiveTagValueIds:直接附加或继承到此资源的标记的
TagValue.name
。
networkTags:与此资源关联的网络标记。请参阅为 Google Cloud Platform 资源添加标签和分组。
kmsKey:用于加密此资源的客户管理的加密密钥。此字段已弃用。请使用
kmsKeys
字段检索 Cloud KMS 密钥信息。请参阅 CryptoKey 和 CryptoKeyVersion。kmsKeys:用于加密此资源的客户管理的加密密钥。请参阅 CryptoKey 和 CryptoKeyVersion。
relationships:与此资源关联的关系。关系可以匹配关系类型和/或相关资源名称。请参阅支持的关系类型。
relationships.[relationship_type]::与此资源关联的特定资源类型的相关资源名称。例如:
relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
。请参阅支持的关系类型。sccSecurityMarks:与资产关联的 Security Command Center 安全标记的实际内容。例如:
sccSecurityMarks.foo:bar
。请参阅 Security Command Center 支持的资产类型。state::此资源的状态的文本值。不同的资源类型具有不同的状态定义,这些状态定义从不同资源类型的各种字段映射。示例:如果资源是 Compute Engine 提供的实例,则其状态包括
PROVISIONING
、STAGING
、RUNNING
、STOPPING
、SUSPENDING
、SUSPENDED
、REPAIRING
和TERMINATED
。请参阅 API 参考文档中的status
定义。如果资源是 Cloud Resource Manager 提供的项目,则其状态包括LIFECYCLE_STATE_UNSPECIFIED
、ACTIVE
、DELETE_REQUESTED
和DELETE_IN_PROGRESS
。请参阅 API 参考文档中的lifecycleState
定义。createTime::该资源的创建时间戳,创建资源的时间。粒度是秒。
updateTime::此资源的上次更新时间戳,即上次修改或删除资源时的时间。粒度是秒。
project:此资源所属项目的编号。
folders:此资源所属文件夹的数量。
organization:此资源所属的组织的编号。
parentFullResourceName:此资源的父级名称。
parentAssetType:此资源的父项类型。
示例:按特定字段查询
在
scope
中查找name
包含Important
一词的所有资源:name:Important
查找
scope
中displayName
包含前缀为prod
的字词的所有资源:displayName:prod*
在
scope
中查找location
包含us
一词的所有资源:location:us
在
scope
中查找location
恰好等于us
的所有资源:location=us
查找
scope
中直接附加了包含env
一词的TagKey.namespacedName
标记的所有资源:tagKeys:env
查找
scope
中具有直接附加的标记(TagKey.name
正好等于tagKeys/123
)的所有资源:tagKeyIds=tagKeys/123
查找
scope
中直接附加了标记且TagValue.namespacedName
包含以prod
为前缀的字词的所有标记的资源:tagValues:prod*
查找
scope
中具有直接附加的标记(TagValue.name
正好等于tagValues/123
)的所有资源:tagValueIds=tagValues/123
查找
scope
中具有直接附加的标记(使用TagValue.namespacedName
)的所有资源。tagValues:*
查找
scope
中直接附加或继承的标记中包含env
一词的TagKey.namespacedName
的所有资源:effectiveTagKeys:env
查找
scope
中具有直接附加或继承的标记(TagKey.name
正好等于tagKeys/123
)的所有资源:effectiveTagKeyIds=tagKeys/123
查找
scope
中直接附加或继承的标记(其TagValue.namespacedName
中包含以prod
为前缀的字词)的所有资源:effectiveTagValues:prod*
查找
scope
中具有直接附加或继承的标记(TagValue.name
正好等于tagValues/123
)的所有资源:effectiveTagValueIds=tagValues/123
使用
TagValue.namespacedName
查找scope
中具有直接附加或继承的标记的所有资源。effectivetagValues:*
查找
scope
中键或值包含prod
一词的label
的所有资源:labels:prod
在您的
scope
中查找具有label
且键为env
且值包含prod
一词的所有资源:labels.env:prod
在您的
scope
中查找具有label
且键为env
且值恰好等于prod
的所有资源:labels.env=prod
查找
scope
中具有label
且键为env
的所有资源:labels.env:*
在
scope
中查找其中一个networkTags
包含internal
一词的所有资源:networkTags:internal
在
scope
中查找其中一个networkTags
恰好等于internal
的所有资源:networkTags=internal
在
scope
中查找与相关资源名称中的instance-group-1
有关系的所有资源:relationships:instance-group-1
在
scope
中查找具有INSTANCE_TO_INSTANCEGROUP
类型关系的计算实例:relationships:INSTANCE_TO_INSTANCEGROUP
对于关系类型
INSTANCE_TO_INSTANCEGROUP
,在scope
中查找与计算实例组资源名称中的instance-group-1
有关系的计算实例:relationships.INSTANCE_TO_INSTANCEGROUP:instance-group-1
在
scope
中查找kmsKeys
包含key
一词的所有资源:kmsKeys:key
在
scope
中查找kmsKeys
恰好等于key
的所有资源:kmsKeys=key
在
scope
中查找sccSecurityMarks
包含确切键值对(key, value)
的所有资源:sccSecurityMarks.key=value
在
scope
中查找sccSecurityMarks
包含键为key
的键值对的所有资源:sccSecurityMarks.key:*
在
scope
中查找state
包含ACTIVE
一词的所有资源:state:ACTIVE
在
scope
中查找state
不包含ACTIVE
一词的所有资源:NOT state:ACTIVE
查找
scope
中在2021-01-01 00:00:00 UTC
之前创建的所有资源(1609459200
是2021-01-01 00:00:00 UTC
的纪元时间戳,以秒为单位):createTime<1609459200 createTime<2021-01-01 createTime<"2021-01-01T00:00:00"
查找
scope
中在2021-01-01 00:00:00 UTC
(1609459200
是纪元时间戳,以2021-01-01 00:00:00 UTC
的秒数表示)之后更新的所有资源:updateTime>1609459200 updateTime>2021-01-01 updateTime>"2021-01-01T00:00:00"
在
scope
中查找project
的编号为123
的所有资源:project:123
查找包含在
folder
中的scope
中编号为123
的所有资源:folders:123
在
scope
中查找organization
的编号为123
的所有资源:organization:123
在
scope
中查找parentFullResourceName
包含ImportantName
的所有资源:parentFullResourceName:ImportantName
在
scope
中查找parentAssetType
包含Project
的所有资源:parentAssetType:Project
查找
scope
中name
包含Important
且description
包含前缀为import
的字词的所有资源:name:Important description:import*
查找
scope
中name
包含Important
或description
包含前缀为import
的字词的所有资源:name:Important OR description:import*
通过自由文本查询 Google Cloud 资源
您也可以直接使用自由文本查询,而不指定字段。然后,只要资源元数据中存在与查询匹配的字段,它就会返回资源。
示例:按自由文本查询
查找
scope
中元数据字段(例如name
、displayName
和description
)包含字词Important
的所有资源:Important
在
scope
中查找其元数据字段(例如name
、displayName
、description
)包含前缀为import
的字词的所有资源:import*
在
scope
中查找其元数据字段(例如name
、displayName
、description
)包含单词Important
且还包含前缀为prod
的字词的所有资源:Important prod*