导出到 Cloud Storage

本主题介绍如何将项目的资产元数据导出到 Cloud Storage 存储桶

准备工作

在开始之前,请完成以下步骤。

  1. 对要运行 API 命令的项目启用 Cloud Asset Inventory API。

    启用 Cloud Asset Inventory API

  2. 配置使用 gcloud CLIAPI 调用 Cloud Asset Inventory API 所需的权限。

  3. 完成以下步骤以设置您的环境。

    gcloud CLI

    如需设置环境以使用 gcloud CLI 调用 Cloud Asset Inventory API,请在本地客户端上安装 Google Cloud CLI

    REST

    如需设置环境以使用 curl 命令调用 Cloud Asset Inventory API,请完成以下步骤。

    1. 确认您可以使用 curl 命令。

    2. 请务必向您的帐号授予项目、文件夹或组织的以下角色之一。

      • Cloud Asset Viewer 角色 (roles/cloudasset.viewer)

      • Owner 基本角色 (roles/owner)

  4. 如果要将元数据从一个项目导出到另一个项目,请确保导出项目的默认 Cloud Asset Inventory 服务帐号已存在且具有正确的权限

  5. 创建 Cloud Storage 存储桶以存储导出的快照。

限制

导出资产快照时,请注意以下几点:

  • 不支持使用自定义 Cloud Key Management Service (Cloud KMS) 密钥加密的 Cloud Storage 存储分区。

  • Cloud Storage 存储桶不能设置保留政策

  • 如果要导出到的文件已存在并且正在导出到,系统会返回 400 错误。

  • 为了测试权限,Cloud Asset Inventory 会在导出数据之前创建一个空文件,该文件会发送额外的 Cloud Storage 触发器事件 google.cloud.storage.object.v1.finalized

将资产快照导出到 Cloud Storage

导出所有资源名称(不包含元数据)

如需导出项目、文件夹或组织中的所有资源名称(不包含元数据),请发出以下请求之一。

gcloud

项目

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • PROJECT_ID:您要导出其元数据的项目的 ID。

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

文件夹

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • FOLDER_ID:您要导出其元数据的文件夹的 ID。

    如何查找 Google Cloud 文件夹 ID

    控制台

    如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 搜索您的文件夹名称。文件夹 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

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

组织

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。获取资产快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • SCOPE:范围可以是项目、文件夹或组织。

    允许使用的值包括:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      如何查找 Google Cloud 项目编号

      控制台

      如需查找 Google Cloud 项目编号,请完成以下步骤:

      1. 转到 Google Cloud 控制台中的信息中心页面。

        前往信息中心

      2. 点击菜单栏中的切换器框。
      3. 请选择:框中选择您的组织,然后搜索项目名称。
      4. 点击项目名称以切换到该项目。项目信息卡片中会显示项目编号。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 项目编号:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      如何查找 Google Cloud 文件夹 ID

      控制台

      如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 搜索您的文件夹名称。文件夹 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,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 点击全部标签页。组织 ID 显示在组织名称旁边。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 组织 ID:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

导出所有资源元数据

如需导出项目、文件夹或组织中的所有资源元数据,请发出以下请求。

gcloud

项目

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • PROJECT_ID:您要导出其元数据的项目的 ID。

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

文件夹

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • FOLDER_ID:您要导出其元数据的文件夹的 ID。

    如何查找 Google Cloud 文件夹 ID

    控制台

    如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 搜索您的文件夹名称。文件夹 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

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

组织

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "RESOURCE",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资源快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • SCOPE:范围可以是项目、文件夹或组织。

    允许使用的值包括:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      如何查找 Google Cloud 项目编号

      控制台

      如需查找 Google Cloud 项目编号,请完成以下步骤:

      1. 转到 Google Cloud 控制台中的信息中心页面。

        前往信息中心

      2. 点击菜单栏中的切换器框。
      3. 请选择:框中选择您的组织,然后搜索项目名称。
      4. 点击项目名称以切换到该项目。项目信息卡片中会显示项目编号。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 项目编号:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      如何查找 Google Cloud 文件夹 ID

      控制台

      如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 搜索您的文件夹名称。文件夹 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,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 点击全部标签页。组织 ID 显示在组织名称旁边。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 组织 ID:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

导出特定资产类型的资源元数据

如需导出项目、文件夹或组织中资产类型以 compute.googleapis.com 开头的所有资源的元数据,请发出以下请求之一。

gcloud

项目

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --asset-types=compute.googleapis.com.* \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • PROJECT_ID:您要导出其元数据的项目的 ID。

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

文件夹

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --asset-types=compute.googleapis.com.* \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • FOLDER_ID:您要导出其元数据的文件夹的 ID。

    如何查找 Google Cloud 文件夹 ID

    控制台

    如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 搜索您的文件夹名称。文件夹 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

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

组织

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --asset-types=compute.googleapis.com.* \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "RESOURCE",
          "assetTypes": "compute.googleapis.com.*",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。获取资产快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • SCOPE:范围可以是项目、文件夹或组织。

    允许使用的值包括:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      如何查找 Google Cloud 项目编号

      控制台

      如需查找 Google Cloud 项目编号,请完成以下步骤:

      1. 转到 Google Cloud 控制台中的信息中心页面。

        前往信息中心

      2. 点击菜单栏中的切换器框。
      3. 请选择:框中选择您的组织,然后搜索项目名称。
      4. 点击项目名称以切换到该项目。项目信息卡片中会显示项目编号。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 项目编号:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      如何查找 Google Cloud 文件夹 ID

      控制台

      如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 搜索您的文件夹名称。文件夹 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,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 点击全部标签页。组织 ID 显示在组织名称旁边。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 组织 ID:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

导出 IAM 政策

如需导出项目、文件夹或组织中的 IAM 政策,请发出以下请求之一。

gcloud

项目

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=iam-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • PROJECT_ID:您要导出其元数据的项目的 ID。

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

文件夹

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=iam-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • FOLDER_ID:您要导出其元数据的文件夹的 ID。

    如何查找 Google Cloud 文件夹 ID

    控制台

    如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 搜索您的文件夹名称。文件夹 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

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

组织

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=iam-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "IAM_POLICY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资源快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • SCOPE:范围可以是项目、文件夹或组织。

    允许使用的值包括:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      如何查找 Google Cloud 项目编号

      控制台

      如需查找 Google Cloud 项目编号,请完成以下步骤:

      1. 转到 Google Cloud 控制台中的信息中心页面。

        前往信息中心

      2. 点击菜单栏中的切换器框。
      3. 请选择:框中选择您的组织,然后搜索项目名称。
      4. 点击项目名称以切换到该项目。项目信息卡片中会显示项目编号。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 项目编号:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      如何查找 Google Cloud 文件夹 ID

      控制台

      如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 搜索您的文件夹名称。文件夹 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,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 点击全部标签页。组织 ID 显示在组织名称旁边。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 组织 ID:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

导出组织政策

如需导出为项目、文件夹或组织设置的组织政策,请发出以下请求之一。

gcloud

项目

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=org-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • PROJECT_ID:您要导出其元数据的项目的 ID。

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

文件夹

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=org-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • FOLDER_ID:您要导出其元数据的文件夹的 ID。

    如何查找 Google Cloud 文件夹 ID

    控制台

    如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 搜索您的文件夹名称。文件夹 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

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

组织

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=org-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "ORG_POLICY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资源快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • SCOPE:范围可以是项目、文件夹或组织。

    允许使用的值包括:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      如何查找 Google Cloud 项目编号

      控制台

      如需查找 Google Cloud 项目编号,请完成以下步骤:

      1. 转到 Google Cloud 控制台中的信息中心页面。

        前往信息中心

      2. 点击菜单栏中的切换器框。
      3. 请选择:框中选择您的组织,然后搜索项目名称。
      4. 点击项目名称以切换到该项目。项目信息卡片中会显示项目编号。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 项目编号:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      如何查找 Google Cloud 文件夹 ID

      控制台

      如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 搜索您的文件夹名称。文件夹 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,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 点击全部标签页。组织 ID 显示在组织名称旁边。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 组织 ID:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

导出 OSConfig 实例清单

如需导出虚拟机实例的 OSConfig 实例目录,请运行以下命令。

gcloud

项目

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=os-inventory \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • PROJECT_ID:您要导出其元数据的项目的 ID。

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

文件夹

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=os-inventory \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • FOLDER_ID:您要导出其元数据的文件夹的 ID。

    如何查找 Google Cloud 文件夹 ID

    控制台

    如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 搜索您的文件夹名称。文件夹 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

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

组织

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=os-inventory \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "OS_INVENTORY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。获取资产快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • SCOPE:范围可以是项目、文件夹或组织。

    允许使用的值包括:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      如何查找 Google Cloud 项目编号

      控制台

      如需查找 Google Cloud 项目编号,请完成以下步骤:

      1. 转到 Google Cloud 控制台中的信息中心页面。

        前往信息中心

      2. 点击菜单栏中的切换器框。
      3. 请选择:框中选择您的组织,然后搜索项目名称。
      4. 点击项目名称以切换到该项目。项目信息卡片中会显示项目编号。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 项目编号:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      如何查找 Google Cloud 文件夹 ID

      控制台

      如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 搜索您的文件夹名称。文件夹 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,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 点击全部标签页。组织 ID 显示在组织名称旁边。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 组织 ID:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

导出组织中的访问权限政策

只能为组织导出访问权限政策。如需导出,请发出以下请求。

gcloud

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=access-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已使用 gcloud config set project 切换到结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或距今不超过 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "ACCESS_POLICY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/organizations/ORGANIZATION_ID:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。获取资产快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

导出关系

如需导出项目、文件夹或组织中的关系,请发出以下请求之一。

gcloud

项目

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=relationship \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • PROJECT_ID:您要导出其元数据的项目的 ID。

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

文件夹

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=relationship \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • FOLDER_ID:您要导出其元数据的文件夹的 ID。

    如何查找 Google Cloud 文件夹 ID

    控制台

    如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 搜索您的文件夹名称。文件夹 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

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

组织

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=relationship \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

请提供以下值:

  • ORGANIZATION_ID:您要导出其元数据的组织的 ID。

    如何查找 Google Cloud 组织 ID

    控制台

    如需查找 Google Cloud 组织 ID,请完成以下步骤:

    1. 转到 Google Cloud 控制台。

      前往 Google Cloud 控制台

    2. 点击菜单栏中的切换器框。
    3. 点击请选择:复选框,然后选择您的组织。
    4. 点击全部标签页。组织 ID 显示在组织名称旁边。

    gcloud CLI

    您可以使用以下命令检索 Google Cloud 组织 ID:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • BILLING_PROJECT_ID:可选。默认 Cloud Asset Inventory 服务代理所属的项目 ID,该 ID 具有向您的 Cloud Storage 存储桶写入数据的权限。如果您已切换到具有 gcloud config set project 的结算项目,则无需指定此项。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资产快照的时间。值必须是当前时间或不超过过去 35 天的时间。如果未提供,系统会在当前时间截取快照。如需了解时间格式,请参阅 gcloud topic DateTimes

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

REST

curl -X POST \
     -H "X-Goog-User-Project: BILLING_PROJECT_ID" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "RELATIONSHIP",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1//SCOPE:exportAssets

请提供以下值:

  • BILLING_PROJECT_ID:默认 Cloud Asset Inventory 服务代理所属的项目 ID,该代理有权向您的 Cloud Storage 存储桶写入数据。详细了解结算项目

  • SNAPSHOT_TIME:可选。您希望截取资源快照的时间,采用 RFC 3339 格式。值必须是当前时间或不超过过去 35 天的时间。如果未提供,则截取当前时间的快照。

  • BUCKET_NAME:要写入数据的 Cloud Storage 存储桶的名称。

  • FILENAME:Cloud Storage 存储桶中要写入数据的文件。

  • SCOPE:范围可以是项目、文件夹或组织。

    允许使用的值包括:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      如何查找 Google Cloud 项目编号

      控制台

      如需查找 Google Cloud 项目编号,请完成以下步骤:

      1. 转到 Google Cloud 控制台中的信息中心页面。

        前往信息中心

      2. 点击菜单栏中的切换器框。
      3. 请选择:框中选择您的组织,然后搜索项目名称。
      4. 点击项目名称以切换到该项目。项目信息卡片中会显示项目编号。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 项目编号:

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

      如何查找 Google Cloud 文件夹 ID

      控制台

      如需查找 Google Cloud 文件夹 ID,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 搜索您的文件夹名称。文件夹 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,请完成以下步骤:

      1. 转到 Google Cloud 控制台。

        前往 Google Cloud 控制台

      2. 点击菜单栏中的切换器框。
      3. 点击请选择:复选框,然后选择您的组织。
      4. 点击全部标签页。组织 ID 显示在组织名称旁边。

      gcloud CLI

      您可以使用以下命令检索 Google Cloud 组织 ID:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

查看导出状态

操作与操作 ID(即 UUID)相关联。此值可能比较敏感,因为 gcloud asset operations describe 命令无需额外的权限即可成功运行。请确保仅与可信用户共享操作 ID。

如果之前对同一目的地的请求开始不到 15 分钟且仍在运行,服务器会拒绝相应请求。如果导出时间超过 15 分钟,且在第一个请求成功之前对同一目的地连续执行请求,则可能会出现未定义的结果。

如需检查导出状态,请运行以下命令。

gcloud CLI

如需检查导出状态,您可以运行以下命令。运行导出命令后,响应中会显示 OPERATION_PATH

gcloud asset operations describe OPERATION_PATH

REST

要查看导出的状态,请使用导出响应中返回的操作 ID 运行以下命令。

  1. 您可以在导出响应的 name 字段中找到 OPERATION_PATH,其格式如下所示:

    "name": "projects/PROJECT_NUMBER/operations/ExportAssets/CONTENT_TYPE/OPERATION_ID"
    
  2. 要检查导出状态,请使用 OPERATION_PATH 运行以下命令:

    curl -X GET \
         -H "Authorization: Bearer $(gcloud auth print-access-token)" \
         -H "Content-Type: application/json" \
         https://cloudasset.googleapis.com/v1/OPERATION_PATH
    

查看资产快照

要查看资产快照,请执行以下操作:

  1. 前往 Google Cloud 控制台中的 Cloud Storage 存储分区页面。

    转到“存储分区”

  2. 选择存储导出数据的存储桶,然后选择文件名。

导出结果列出了资产及其资源名称