Cloud Asset Inventory 是一种全球元数据目录服务,让您可以查看、搜索 导出、监控和分析您的 Google Cloud 资产元数据,最多包含 35 个 创建、更新和删除历史记录的天数。未更改的 过去 35 天报告的最新状态。
资产元数据可来自以下位置:
Google Cloud 资源,例如 Compute Engine 虚拟机实例、 Cloud Storage 存储分区和 App Engine 实例。
在 Google Cloud 资源上设置的政策,例如 IAM 政策、组织政策和 Access Context Manager 政策。
运行时信息来源: OS Inventory Management。
您可以使用素材资源的方法如下:
搜索您的资源及其 IAM 允许政策 使用自定义查询语言,或 使用 BigQuery SQL 查询资产。
将资产元数据导出到 BigQuery 或 Cloud Storage。
分析 IAM 和组织政策 资源,以及 查看有效的 IAM 政策 以查看谁有权访问什么
通过设置和订阅 Feed,监控资产是否发生了变化。
根据素材资源生成数据分析 ,帮助您改善安全状况。
资产类型、资产名称和内容类型
Cloud Asset Inventory 提供了多种与资产交互的方法。根据您使用的方法和所需的响应详细信息,您可能需要在请求中指定资产类型、资产名称和内容类型。
资产类型
某些 Cloud Asset Inventory 方法会根据资产类型返回结果。资产类型包括 Google Cloud 资源、政策、操作系统目录运行时信息和关系。可用的资产类型和 Cloud Asset Inventory 支持它们的方法的详细信息 素材资源类型。
素材资源名称
某些 Cloud Asset Inventory 方法会根据资产名称返回结果。指定 则必须使用其完整的资源名称。请参阅 完整资源列表的资产名称 名称。
内容类型
您可以通过指定元数据来请求有关资源的其他元数据 内容类型。如果您未指定内容类型,则只有基本响应 其中包含资源名称、上次 及其所属的项目、文件夹和组织。
内容类型名称因您与 Cloud Asset Inventory 的交互方式而异。RPC API 和 REST API 的名称相同。但是,gcloud CLI 内容类型名称遵循不同的模式为保持一致性并方便说明,本文档的其余部分将按 RPC 和 REST 名称引用内容类型。
下表详细说明了内容类型及其说明:
内容类型 | 说明 | |
---|---|---|
RPC 和 REST 名称 | gcloud CLI 名称 | |
ACCESS_POLICY |
access-policy |
在资源上设置的 Access Context Manager 政策。 |
IAM_POLICY |
iam-policy |
与资源绑定的 IAM 政策元数据。 |
ORG_POLICY |
org-policy |
为资产设置的组织政策元数据。此内容类型会输出旧版组织政策 v1。对于组织政策 v2,请尝试使用 resource 内容类型和 orgpolicy.googleapis.com/Policy 资源类型。
|
OS_INVENTORY |
os-inventory |
运行时操作系统清单信息。如需启用操作系统清点,请完成设置虚拟机管理器中的相关步骤。 |
RELATIONSHIP |
relationship |
仅适用于 <ph type="x-smartling-placeholder"></ph> Security Command Center 高级和企业层级 位订阅者。 许多 Google Cloud 资产通过 关系。例如, 计算实例组可以 包含计算实例,或 一 GKE 集群 可包含 节点。 自 2022 年 5 月 30 日起,系统会提供关系数据。有交往对象了 可能都有自己的更新时间戳, 与源资源更新的时间不同。 请参阅 <ph type="x-smartling-placeholder"></ph> 关系类型 以获取支持关系的列表。 |
RESOURCE |
resource |
资源的元数据。 |
响应随内容类型的变化
以下示例展示了在 使用具有不同内容类型的 Cloud Asset Inventory 创建项目的项目。
无内容类型
如果您在列出虚拟机实例时未指定内容类型,则只会收到 实例名称、上次更新时间以及 及其所属的组织
展开即可查看回答示例
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME updateTime: '2023-11-15T12:28:30.087825Z'
IAM_POLICY 内容类型
如果您指定 IAM_POLICY
内容类型,还会收到
虚拟机上的 IAM 绑定(如果有)。
展开以查看响应示例
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance iamPolicy: bindings: - members: - user:USER_EMAIL_ADDRESS role: roles/compute.securityAdmin etag: ETAG name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME updateTime: '2023-12-19T23:35:42.673842Z'
RESOURCE 内容类型
如果您指定 RESOURCE
内容类型,还会收到所有元数据
与虚拟机关联的虚拟机
展开即可查看回答示例
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME resource: data: allocationAffinity: consumeAllocationType: ANY_ALLOCATION canIpForward: false confidentialInstanceConfig: enableConfidentialCompute: true cpuPlatform: AMD Rome creationTimestamp: '2023-11-14T14:35:37.059-08:00' deletionProtection: false description: '' disks: - architecture: X86_64 autoDelete: true boot: true deviceName: INSTANCE_NAME diskSizeGb: '10' guestOsFeatures: - type: VIRTIO_SCSI_MULTIQUEUE - type: SEV_CAPABLE - type: SEV_SNP_CAPABLE - type: SEV_LIVE_MIGRATABLE - type: UEFI_COMPATIBLE - type: GVNIC index: 0 interface: NVME licenses: - https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/licenses/ubuntu-2004-lts mode: READ_WRITE shieldedInstanceInitialState: dbx: - content: DATA fileType: BIN dbxs: - content: DATA fileType: BIN source: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/INSTANCE_NAME type: PERSISTENT displayDevice: enableDisplay: false fingerprint: FINGERPRINT id: 'ID' keyRevocationActionType: NONE_ON_KEY_REVOCATION labelFingerprint: LABEL_FINGERPRINT lastStartTimestamp: '2023-11-15T04:28:30.005-08:00' machineType: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/machineTypes/n2d-standard-2 name: INSTANCE_NAME networkInterfaces: - accessConfigs: - name: External NAT natIP: 34.27.105.222 networkTier: PREMIUM type: ONE_TO_ONE_NAT fingerprint: jKU51FdTluk= name: nic0 network: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default networkIP: 10.128.15.212 nicType: GVNIC stackType: IPV4_ONLY subnetwork: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/default reservationAffinity: consumeReservationType: ANY_ALLOCATION resourceStatus: {} scheduling: automaticRestart: true onHostMaintenance: TERMINATE preemptible: false provisioningModel: STANDARD selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME serviceAccounts: - email: PROJECT_NUMBER-compute@developer.gserviceaccount.com scopes: - https://www.googleapis.com/auth/devstorage.read_only - https://www.googleapis.com/auth/logging.write - https://www.googleapis.com/auth/monitoring.write - https://www.googleapis.com/auth/servicecontrol - https://www.googleapis.com/auth/service.management.readonly - https://www.googleapis.com/auth/trace.append shieldedInstanceConfig: enableIntegrityMonitoring: true enableSecureBoot: false enableVtpm: true shieldedInstanceIntegrityPolicy: updateAutoLearnPolicy: true startRestricted: false status: RUNNING tags: fingerprint: FINGERPRINT zone: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE discoveryDocumentUri: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest discoveryName: Instance location: ZONE parent: //cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER version: v1 updateTime: '2023-11-15T12:28:30.087825Z'
RELATIONSHIP 内容类型
仅适用于 Security Command Center 高级方案和企业层级 位订阅者。
如果您指定了 RELATIONSHIP
内容类型,则还会收到与虚拟机实例的相关资产关联的元数据。
展开以查看响应示例
--- ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME relatedAsset: ancestors: - projects/PROJECT_NUMBER - folders/FOLDER_NUMBER - organizations/ORGANIZATION_ID asset: //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/disks/INSTANCE_NAME assetType: compute.googleapis.com/Disk relationshipType: COMPUTE_INSTANCE_USE_DISK updateTime: '2023-12-19T23:35:42.673842Z'
使用 RELATIONSHIP
内容类型时,而不是请求全部
您可以请求
关系类型。