将 Compute Engine 与 Google SecOps 集成
集成版本:13.0
本文档介绍了如何将 Compute Engine 与 Google Security Operations 集成。
使用场景
Compute Engine 集成使用 Google SecOps 功能来支持以下使用情形:
自动安全事件响应:使用 playbook 自动将遭入侵的 Compute Engine 实例与网络隔离。自动隔离可限制攻击的蔓延,缩短响应时间,并减轻安全团队的工作负担。
威胁搜寻和调查:自动从多个项目中的 Compute Engine 实例收集日志和安全遥测数据。通过分析这些整合的数据,您可以主动搜寻威胁,并自动收集数据,从而加快调查速度。
漏洞管理:将漏洞扫描工具与 Google SecOps 集成,以自动扫描 Compute Engine 实例是否存在已知漏洞。生成补救工单或直接修补漏洞,以降低被利用的风险并改善安全状况。
合规性自动化:自动从 Compute Engine 实例收集审核日志和配置数据,以符合监管要求。为审核人员生成报告和信息中心,以简化合规性报告并减少人工工作量。
安全编排:编排跨多个Google Cloud 服务(包括 Compute Engine)的安全工作流。例如,触发创建新的防火墙规则,以响应在实例上检测到的安全事件,从而实现更协调、更自动化的安全态势。
准备工作
如需将 Compute Engine 与 Google SecOps 集成,您必须配置具有必要权限的服务账号。
创建自定义 IAM 角色
创建自定义 Identity and Access Management (IAM) 角色,其中包含集成管理实例所需的特定权限。
在 Google Cloud 控制台中,前往 IAM 和管理 > 角色。
点击 Create role。
提供标题(例如
SecOps Compute Engine Integration)、说明和唯一的 ID。将角色发布阶段设置为正式版。
点击添加权限,然后添加以下权限:
compute.instances.listcompute.instances.startcompute.instances.stopcompute.instances.deletecompute.instances.setLabelscompute.instances.getIamPolicycompute.instances.setIamPolicycompute.instances.getcompute.zones.list
点击创建。
创建服务账号
创建一个服务账号,供集成在您的项目中执行操作。
在 Google Cloud 控制台中,依次前往 IAM 和管理 > 服务账号。
选择项目,然后点击创建服务账号。
输入服务账号名称和说明,然后点击创建并继续。
在向此服务账号授予对项目的访问权限这一步中,搜索并选择您在上一个部分中创建的自定义角色。
点击完成。
配置身份验证方法
建议使用 Workload Identity 身份验证方法,因为该方法从根本上来说更安全。这些选项之间的区别如下:
JSON 密钥:此方法依赖于静态的长期有效的 Secret,如果被破解,会带来持续的安全风险。
Workload Identity:此方法使用短期有效的临时访问令牌,无需存储任何 Secret,从而大大提高安全性。
配置 JSON 密钥
如需创建 JSON 密钥,请完成以下步骤:
- 选择您的服务账号,然后前往密钥。
- 点击添加密钥。
- 选择创建新密钥。
- 对于密钥类型,选择 JSON,然后点击创建。此时会显示一个对话框,提示私钥已保存到您的计算机,然后系统会将该私钥的副本下载到您的计算机。
配置 Workload Identity 凭据
借助 Workload Identity,您可以从 Google SecOps 实例安全地访问 Google Cloud 资源,而无需导出凭据。
向 Google SecOps 实例授予模拟权限
如需使用 Workload Identity,您必须向 Google SecOps 实例授予模拟服务账号的权限。这是最后一步,可让实例安全地访问 Google Cloud 资源。
在 Google SecOps 中,前往内容中心 > 响应集成。
选择您要配置的集成,然后在
Workload Identity Email字段中输入您的服务账号电子邮件地址。在
Delegated Email字段中输入您希望集成模拟的电子邮件地址。依次点击保存 > 测试。测试预计会失败。
点击测试右侧的 close_small,然后搜索错误消息中的
gke-init-python@YOUR_PROJECT。复制此唯一电子邮件地址,该地址用于标识您的 Google SecOps 实例。依次前往 IAM 和管理 > 服务账号,选择您的项目,然后选择您的服务账号。
依次选择具有访问权限的主账号> 添加授予访问权限。
在添加主账号下,粘贴您复制的值。
在添加角色下,选择
Service Account Token Creator(roles/iam.serviceAccountTokenCreator) 角色。
集成参数
Compute Engine 集成需要以下参数:
| 参数 | 说明 |
|---|---|
API Root |
可选。 Compute Engine API 的基本网址。 默认值为 |
OS Config API Root |
可选。 Cloud OS Config API 的基本网址。 默认值为 |
Account Type |
可选。 Google Cloud 账号的类型。 这对应于服务账号密钥 JSON 文件中的 默认值为 |
Project ID |
可选。 Google Cloud 项目的 ID。 这对应于服务账号密钥 JSON 文件中的 |
Private Key ID |
可选。 Google Cloud 账号的私钥 ID。 这对应于服务账号密钥 JSON 文件中的 |
Private Key |
可选。 Google Cloud 账号的私钥。 这对应于服务账号密钥 JSON 文件中的 |
Client Email |
可选。 Google Cloud 账号的客户端电子邮件地址。 这对应于服务账号密钥 JSON 文件中的 |
Client ID |
可选。 Google Cloud 账号的客户端 ID。 这对应于服务账号密钥 JSON 文件中的 |
Auth URI |
可选。 Google Cloud 账号的身份验证 URI。 这对应于服务账号密钥 JSON 文件中的 默认值为 |
Token URI |
可选。 Google Cloud 账号的令牌 URI。 这对应于服务账号密钥 JSON 文件中的 默认值为 |
Auth Provider X509 URL |
可选。 Google Cloud 账号的身份验证提供方 X.509 网址。 这对应于服务账号密钥 JSON 文件中的 默认值为 |
Client X509 URL |
可选。 Google Cloud 账号的客户端 X.509 网址。 此字段对应于服务账号密钥 JSON 文件中的 |
Service Account Json File Content |
可选。 服务账号密钥 JSON 文件的内容。 如果您使用服务账号密钥进行身份验证,请使用此参数。 粘贴下载的 JSON 文件的完整内容。 如果您使用此参数,请将 |
Workload Identity Email |
可选。 您要模拟的服务账号的电子邮件地址。 如果您使用 Workload Identity 进行身份验证,请使用此参数。 如果您使用此参数,请将 |
Verify SSL |
必填。 如果选择此项,集成会在连接到 Compute Engine 服务器时验证 SSL 证书。 默认处于启用状态。 |
如需了解如何在 Google SecOps 中配置集成,请参阅配置集成。
如有需要,您可以在稍后阶段进行更改。配置集成实例后,您可以在 playbook 中使用该实例。如需详细了解如何配置和支持多个实例,请参阅支持多个实例。
操作
如需详细了解操作,请参阅 在工作台页面中处理待处理的操作和执行手动操作。
向防火墙规则添加 IP
使用向防火墙规则添加 IP 范围操作,将 IP 范围附加到 Compute Engine 实例中的现有防火墙规则。
此操作不适用于 Google SecOps 实体。
操作输入
将 IP 添加到防火墙规则操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目名称。 如果未提供任何值,则操作会使用集成配置中的项目 ID。 |
Firewall Rule |
可选。 要更新的特定防火墙规则的名称。 |
Type |
必填。 要添加的 IP 范围的流量方向。 可能的值如下:
默认值为 |
IP Ranges |
必填。 要添加到防火墙规则中的 IP 地址范围(CIDR 表示法)的逗号分隔列表。 |
操作输出
将 IP 添加到防火墙规则操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例展示了使用向防火墙规则添加 IP 操作时收到的 JSON 结果输出:
{
"kind": "compute#operation",
"id": "0000000000000000000",
"name": "operation-1716223324528-618e5619d1f93-174eac81-6b38200d",
"operationType": "patch",
"targetLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/firewalls/firewall-name",
"targetId": "7886634413370691799",
"status": "DONE",
"user": "compute-admin@project-id.iam.gserviceaccount.com",
"progress": 100,
"insertTime": "2024-05-20T09:42:05.150-07:00",
"startTime": "2024-05-20T09:42:05.164-07:00",
"endTime": "2024-05-20T09:42:09.381-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/operations/operation-1234567890",
"firewall": {
"kind": "compute#firewall",
"id": "6297155974506248217",
"creationTimestamp": "2023-09-13T07:28:06.690-07:00",
"name": "firewall-name",
"description": "",
"network": "https://www.googleapis.com/compute/v1/projects/project-id/global/networks/vpc-network",
"priority": 1000,
"sourceRanges": [
"0.0.0.0/0"
],
"destinationRanges": [
"0.0.0.0/21"
],
"allowed": [
{
"IPProtocol": "tcp",
"ports": [
"22"
]
}
],
"direction": "INGRESS",
"logConfig": {
"enable": false
},
"disabled": false,
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/firewalls/firewall-name"
}
}
输出消息
将 IP 添加到防火墙规则操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Add IP To Firewall Rule". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用向防火墙规则添加 IP 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
为实例添加标签
使用为实例添加标签操作可为特定 Compute Engine 实例添加或更新标签。
此操作不适用于 Google SecOps 实体。
操作输入
向实例添加标签操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 Compute Engine 实例的唯一 ID。 如果您使用 |
Instance Labels |
必填。 以英文逗号分隔的标签列表,用于应用于实例,格式为 |
操作输出
为实例添加标签操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例介绍了使用向实例添加标签操作时收到的 JSON 结果输出:
{
"id": "ID",
"name": "operation-OPERATION_ID",
"zone": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a",
"operationType": "setLabels",
"targetLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/instances/INSTANCE_ID",
"targetId": "INSTANCE_ID",
"status": "RUNNING",
"user": "user@example.com",
"progress": 0,
"insertTime": "2021-04-28T23:01:29.395-07:00",
"startTime": "2021-04-28T23:01:29.397-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/operations/operation-OPERATION_ID",
"kind": "compute#operation"
}
输出消息
向实例添加标签操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Add Labels to Instance". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用为实例添加标签操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
添加网络标记
使用添加网络标记操作可向特定 Compute Engine 实例附加一个或多个网络标记。
此操作不适用于 Google SecOps 实体。
操作输入
添加网络标记操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 Compute Engine 实例的唯一 ID。 如果您使用 |
Network Tags |
必填。 要添加到实例的网络标记的逗号分隔列表。 所有标记都只能包含小写字母、数字和连字符。 |
操作输出
添加网络标记操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例展示了使用添加网络标记操作时收到的 JSON 结果输出:
{
"kind": "compute#instance",
"id": "1459671903146615834",
"creationTimestamp": "2023-09-13T04:20:21.993-07:00",
"name": "instance-2",
"description": "",
"tags": {
"items": [
"another-tag",
"tag"
],
"fingerprint": "BCeEINC7Ths="
},
"machineType": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a/machineTypes/e2-micro",
"status": "RUNNING",
"zone": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a",
"canIpForward": false,
"networkInterfaces": [
{
"kind": "compute#networkInterface",
"network": "https://www.googleapis.com/compute/v1/projects/project-id/global/networks/default",
"subnetwork": "https://www.googleapis.com/compute/v1/projects/project-id/regions/us-central1/subnetworks/default",
"networkIP": "10.128.0.3",
"name": "nic0",
"fingerprint": "-ZnnV7hiDfs=",
"stackType": "IPV4_ONLY"
}
],
"disks": [
{
"kind": "compute#attachedDisk",
"type": "PERSISTENT",
"mode": "READ_WRITE",
"source": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a/disks/instance-2",
"deviceName": "instance-2",
"index": 0,
"boot": true,
"autoDelete": true,
"licenses": [
"https://www.googleapis.com/compute/v1/projects/centos-cloud/global/licenses/centos-7"
],
"interface": "SCSI",
"guestOsFeatures": [
{ "type": "UEFI_COMPATIBLE" },
{ "type": "GVNIC" }
],
"diskSizeGb": "20",
"architecture": "X86_64"
}
],
"metadata": {
"kind": "compute#metadata",
"fingerprint": "NBmH4-7Jw9U=",
"items": []
},
"serviceAccounts": [
{
"email": "1111111111-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"
]
}
],
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a/instances/instance-2",
"scheduling": {
"onHostMaintenance": "MIGRATE",
"automaticRestart": true,
"preemptible": false,
"provisioningModel": "STANDARD"
},
"cpuPlatform": "Intel Broadwell",
"deletionProtection": false,
"shieldedInstanceConfig": {
"enableSecureBoot": false,
"enableVtpm": true,
"enableIntegrityMonitoring": true
}
}
输出消息
添加网络标记操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Add Network Tags". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用添加网络标记操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
删除实例
使用删除实例操作删除 Compute Engine 实例。
此操作不适用于 Google SecOps 实体。
操作输入
删除实例操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 要启动的实例的唯一 ID。 您可以使用列出实例操作检索此值。 如果您使用 |
操作输出
删除实例操作会提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例介绍了使用删除实例操作时收到的 JSON 结果输出:
{
"id": "ID",
"name": "operation-OPERATION_ID",
"zone": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a",
"operationType": "delete",
"targetLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/instances/INSTANCE_ID",
"targetId": "INSTANCE_ID",
"status": "RUNNING",
"user": "user@example.com",
"progress": 0,
"insertTime": "2021-04-28T23:01:29.395-07:00",
"startTime": "2021-04-28T23:01:29.397-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/operations/operation-OPERATION_ID",
"kind": "compute#operation"
}
输出消息
删除实例操作可能会返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
|
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用 Delete Instance 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
丰富实体
使用 Enrich Entities 操作,通过 Compute Engine 中的实例信息来丰富 Google SecOps IP Address 实体。
此操作适用于以下 Google SecOps 实体:
IP Address
操作输入
丰富实体操作需要以下参数:
| 参数 | 说明 |
|---|---|
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 |
操作输出
丰富实体操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 可用 |
| 丰富化表 | 可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
“支持请求墙”表格
执行完成后,丰富实体操作会提供下表:
表名称:ENTITY 扩充表
列:
- 实体字段
- 值
丰富化表
丰富实体操作支持以下实体丰富功能:
| 扩充项字段 | 来源(JSON 键) | 逻辑 |
|---|---|---|
Google_Compute_instance_id |
id |
不可用 |
Google_Compute_creation_timestamp |
creationTimestamp |
不可用 |
Google_Compute_instance_name |
name |
不可用 |
Google_Compute_description |
description |
不可用 |
Google_Compute_tags |
tags |
以 CSV 列表形式提供标记 |
Google_Compute_machine_type |
machineType |
不可用 |
Google_Compute_instance_status |
status |
不可用 |
Google_Compute_instance_zone |
zone |
不可用 |
Google_Compute_can_ip_forward |
canIpForward |
不可用 |
Google_Compute_instance_network_interfaces_name_INDEX
|
networkInterfaces.name |
如果有更多可用的网络接口,则展开 |
Google_Compute_instance_network_interfaces_name_access_configs_type_INDEX |
networkInterfaces.accessConfigs.type |
如果有更多可用的网络接口,则展开 |
Google_Compute_instance_network_interfaces_name_access_configs_name_INDEX |
networkInterfaces.accessConfigs.name |
如果有更多可用的网络接口,则展开 |
Google_Compute_instance_network_interfaces_name_access_configs_natIP_INDEX |
networkInterfaces.accessConfigs.natIP |
如果有更多可用的网络接口,则展开 |
Google_Compute_instance_metadata |
metadata |
实例元数据中的值(以 CSV 格式列出) |
Google_Compute_service_account_INDEX
|
serviceAccounts.email |
如果还有其他服务账号可用,则展开 |
Google_Compute_service_account_scopes_INDEX
|
serviceAccounts.scopes |
如果还有其他服务账号可用,则展开 |
Google_Compute_link_to_Google_Compute |
selfLink |
不可用 |
Google_Compute_labels |
labels |
提供以 CSV 格式列出的值 |
Google_Compute_instance_last_start_timestamp |
lastStartTimestamp |
不可用 |
Google_Compute_instance_last_stop_timestamp |
lastStopTimestamp |
不可用 |
JSON 结果
以下示例介绍了使用丰富实体操作时收到的 JSON 结果输出:
{
"id": "ID",
"creationTimestamp": "2021-04-28T21:34:57.369-07:00",
"name": "instance-1",
"description": "",
"tags": {
"fingerprint": "VALUE"
},
"machineType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/machineTypes/f1-micro",
"status": "RUNNING",
"zone": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a",
"canIpForward": false,
"networkInterfaces": [
{
"network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default",
"subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/subnetworks/default",
"networkIP": "203.0.113.2",
"name": "example",
"accessConfigs": [
{
"type": "ONE_TO_ONE_NAT",
"name": "External NAT",
"natIP": "198.51.100.59",
"networkTier": "PREMIUM",
"kind": "compute#accessConfig"
}
],
"fingerprint": "VALUE",
"kind": "compute#networkInterface"
}
],
"disks": [
{
"type": "PERSISTENT",
"mode": "READ_WRITE",
"source": "https://www.googleapis.com/compute/v1/PROJECT_ID/zones/us-central1-a/disks/instance-1",
"deviceName": "instance-1",
"index": 0,
"boot": true,
"autoDelete": true,
"licenses": [
"https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/licenses/LICENSE"
],
"interface": "SCSI",
"guestOsFeatures": [
{
"type": "UEFI_COMPATIBLE"
},
{
"type": "VIRTIO_SCSI_MULTIQUEUE"
}
],
"diskSizeGb": "10",
"kind": "compute#attachedDisk"
}
],
"metadata": {
"fingerprint": "VALUE",
"kind": "compute#metadata"
},
"serviceAccounts": [
{
"email": "user@example.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"
]
}
],
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/instances/instance-1",
"scheduling": {
"onHostMaintenance": "MIGRATE",
"automaticRestart": true,
"preemptible": false
},
"cpuPlatform": "Intel Haswell",
"labels": {
"vm_test_tag": "tag1"
},
"labelFingerprint": "VALUE",
"startRestricted": false,
"deletionProtection": false,
"reservationAffinity": {
"consumeReservationType": "ANY_RESERVATION"
},
"displayDevice": {
"enableDisplay": false
},
"shieldedInstanceConfig": {
"enableSecureBoot": false,
"enableVtpm": true,
"enableIntegrityMonitoring": true
},
"shieldedInstanceIntegrityPolicy": {
"updateAutoLearnPolicy": true
},
"confidentialInstanceConfig": {
"enableConfidentialCompute": false
},
"fingerprint": "VALUE",
"lastStartTimestamp": "2021-04-28T21:35:07.865-07:00",
"kind": "compute#instance"
}
输出消息
丰富实体操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Enrich Entities". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用丰富实体操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
执行虚拟机补丁作业
使用 Execute VM Patch Job 操作在 Compute Engine 实例上执行虚拟机补丁作业。
此操作不适用于 Google SecOps 实体。
操作输入
执行虚拟机补丁作业操作需要以下参数:
| 参数 | 说明 |
|---|---|
Instance Filter Object |
必填。 用于指定要修补的特定实例的 JSON 对象。 默认值以所有实例为目标: { "all": "true" } |
Name |
必填。 修补作业的唯一名称。 |
Description |
可选。 修补作业用途的简要说明。 |
Patching Config Object |
可选。 一个 JSON 对象,用于定义不同操作系统的具体更新步骤和配置。 如果未提供任何值,则操作会使用以下默认值: { "rebootConfig": "DEFAULT", "apt": { "type": "DIST" }, "yum": { "security": true }, "zypper": { "withUpdate": true }, "windowsUpdate": { "classifications": ["CRITICAL", "SECURITY"] } } |
Patch Duration Timeout |
必填。 修补作业可运行的最长时间(以分钟为单位)。 默认值为 |
Rollout Strategy |
可选。 用于在多个可用区中部署补丁的方法。 可能的值如下:
默认值为 |
Disruption Budget |
必填。 可同时离线的实例数量或百分比(例如 默认值为 |
Wait For Completion |
必填。 如果选择此项,相应操作会一直处于有效状态,直到修补作业完成。 默认处于启用状态。 |
Fail If Completed With Errors |
必填。 如果选择此项,当作业状态为 如果 默认处于启用状态。 |
操作输出
执行虚拟机补丁作业操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例展示了在使用执行虚拟机补丁作业操作时收到的 JSON 结果输出:
{
"name": "projects/PROJECT_ID/patchJobs/JOB_ID",
"createTime": "2024-09-24T16:00:43.354907Z",
"updateTime": "2024-09-24T16:00:44.626050Z",
"state": "PATCHING",
"patchConfig": {
"rebootConfig": "DEFAULT",
"apt": {
"type": "UPGRADE"
},
"yum": {},
"zypper": {},
"windowsUpdate": {}
},
"duration": "3600s",
"instanceDetailsSummary": {
"startedInstanceCount": "1"
},
"percentComplete": 20,
"instanceFilter": {
"instances": [
"zones/us-central1-a/instances/INSTANCE_ID"
]
},
"displayName": "test",
"rollout": {
"mode": "ZONE_BY_ZONE",
"disruptionBudget": {
"percent": 25
}
}
}
输出消息
执行虚拟机补丁作业操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Execute VM Patch Job". Reason: ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用 Execute VM Patch Job 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
获取实例 IAM 政策
使用 Get Instance IAM Policy 操作可检索特定 Compute Engine 资源的 Identity and Access Management (iam_name_short) 访问权限控制政策。
此操作不适用于 Google SecOps 实体。
操作输入
获取实例 IAM 政策操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 要启动的实例的唯一 ID。 您可以使用列出实例操作检索此值。 如果您使用 |
操作输出
获取实例 IAM 政策操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例介绍了使用获取实例 IAM 政策 操作时收到的 JSON 结果输出:
{
"version": 1,
"etag": "BwXBfsc47MI=",
"bindings": [
{
"role": "roles/compute.networkViewer_withcond_2f0c00",
"members": [
"user:user@example.com"
]
}
]
}
输出消息
获取实例 IAM 政策操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Get Instance IAM Policy".
Reason: ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用 Get Instance IAM Policy 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
列出实例
使用 List Instances 操作可根据指定的搜索条件列出 Compute Engine 实例。
此操作不适用于 Google SecOps 实体。
操作输入
列出实例操作需要以下参数:
| 参数 | 说明 |
|---|---|
Project ID |
可选。 要列出实例的项目的 ID。 如果未提供任何值,该操作会从集成配置中使用的 Google Cloud 服务账号检索项目 ID。 |
Instance Zone |
可选。 要搜索实例的具体可用区。 如果未提供值,该操作会在所有可用区域中进行搜索。 |
Instance Name |
可选。 要搜索的实例的名称。 此参数接受多个值,这些值以英文逗号分隔的字符串形式表示。 |
Instance Status |
可选。 要包含在搜索结果中的实例的当前状态,例如 此参数接受多个值,这些值以英文逗号分隔的字符串形式表示。 |
Instance Labels |
可选。 用于过滤实例结果的标签,以 此参数接受多个值,这些值以英文逗号分隔的字符串形式表示。 |
Max Rows to Return |
可选。 结果中要返回的实例数量上限。 默认值为 |
操作输出
列出实例操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
“支持请求墙”表格
列出实例操作提供以下表格:
表格名称:Compute Engine 实例
表列:
- 实例名称
- 实例 ID
- 实例创建时间
- 实例说明
- 实例类型
- 实例状态
- 实例标签
JSON 结果
以下示例介绍了使用列出实例操作时收到的 JSON 结果输出:
{ "id": "projects/PROJECT_ID/zones/us-central1-a/instances",
"items": [
{
"id": "ID",
"creationTimestamp": "2021-04-28T21:34:57.369-07:00",
"name": "instance-1",
"description": "",
"tags": {
"fingerprint": "VALUE"
},
"machineType": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/machineTypes/f1-micro",
"status": "RUNNING",
"zone": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a",
"canIpForward": false,
"networkInterfaces": [
{
"network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default",
"subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/subnetworks/default",
"networkIP": "192.0.2.2",
"name": "example",
"accessConfigs": [
{
"type": "ONE_TO_ONE_NAT",
"name": "External NAT",
"natIP": "203.0.113.59",
"networkTier": "PREMIUM",
"kind": "compute#accessConfig"
}
],
"fingerprint": "VALUE",
"kind": "compute#networkInterface"
}
],
"disks": [
{
"type": "PERSISTENT",
"mode": "READ_WRITE",
"source": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/disks/instance-1",
"deviceName": "instance-1",
"index": 0,
"boot": true,
"autoDelete": true,
"licenses": [
"https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/licenses/LICENSE"
],
"interface": "SCSI",
"guestOsFeatures": [
{
"type": "UEFI_COMPATIBLE"
},
{
"type": "VIRTIO_SCSI_MULTIQUEUE"
}
],
"diskSizeGb": "10",
"kind": "compute#attachedDisk"
}
],
"metadata": {
"fingerprint": "VALUE",
"kind": "compute#metadata"
},
"serviceAccounts": [
{
"email": "user@example.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"
]
}
],
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_IDzones/us-central1-a/instances/instance-1",
"scheduling": {
"onHostMaintenance": "MIGRATE",
"automaticRestart": true,
"preemptible": false
},
"cpuPlatform": "Intel Haswell",
"labels": {
"vm_test_tag": "tag1"
},
"labelFingerprint": "VALUE",
"startRestricted": false,
"deletionProtection": false,
"reservationAffinity": {
"consumeReservationType": "ANY_RESERVATION"
},
"displayDevice": {
"enableDisplay": false
},
"shieldedInstanceConfig": {
"enableSecureBoot": false,
"enableVtpm": true,
"enableIntegrityMonitoring": true
},
"shieldedInstanceIntegrityPolicy": {
"updateAutoLearnPolicy": true
},
"confidentialInstanceConfig": {
"enableConfidentialCompute": false
},
"fingerprint": "VALUE",
"lastStartTimestamp": "2021-04-28T21:35:07.865-07:00",
"kind": "compute#instance"
}
]
}
输出消息
列出实例操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "List Instances". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用列出实例操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
Ping
使用 Ping 操作测试与 Compute Engine 的连接。
此操作不适用于 Google SecOps 实体。
操作输入
无。
操作输出
Ping 操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 不可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
输出消息
Ping 操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
Successfully connected to the Compute Engine service with
the provided connection parameters! |
操作成功。 |
Failed to connect to the Compute Engine service! Error is
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用 Ping 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
移除外部 IP 地址
使用移除外部 IP 地址操作可移除 Compute Engine 实例上的外部 IP 地址。
此操作不适用于 Google SecOps 实体。
操作输入
移除外部 IP 地址操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 要启动的实例的唯一 ID。 您可以使用列出实例操作检索此值。 如果您使用 |
Network Interfaces |
可选。 要修改的特定网络接口的英文逗号分隔列表。 如果未提供任何值,或者您使用了 默认值为 |
操作输出
移除外部 IP 地址操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例介绍了使用移除外部 IP 地址 操作时收到的 JSON 结果输出:
[
{
"endTime": "2024-05-21T04:28:05.371-07:00",
"id": "ID",
"insertTime": "2024-05-21T04:28:04.176-07:00",
"kind": "compute#operation",
"name": "operation-OPERATION_ID",
"operationType": "updateNetworkInterface",
"progress": 100,
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/operations/operation-OPERATION_ID",
"startTime": "2024-05-21T04:28:04.190-07:00",
"status": "DONE",
"targetId": "TARGET_ID",
"targetLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances/INSTANCE_ID",
"user": "user@example.com",
"zone": "us-west1-a",
"networkInterface": "example"
},
{
"endTime": "2024-05-21T04:28:06.549-07:00",
"id": "2531200345768541098",
"insertTime": "2024-05-21T04:28:05.419-07:00",
"kind": "compute#operation",
"name": "operation-OPERATION_ID",
"operationType": "deleteAccessConfig",
"progress": 100,
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/operations/operation-OPERATION_ID",
"startTime": "2024-05-21T04:28:05.430-07:00",
"status": "DONE",
"targetId": "3905740668247239013",
"targetLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instances/INSTANCE_ID",
"user": "user@example.com",
"zone": "us-west1-a",
"networkInterface": "example"
}
]
输出消息
移除外部 IP 地址操作可能会返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
|
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用移除外部 IP 地址 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
从防火墙规则中移除 IP
使用从防火墙规则中移除 IP 操作可从现有的 Compute Engine 防火墙规则中删除特定的 IP 地址范围。
此操作不适用于 Google SecOps 实体。
操作输入
从防火墙规则中移除 IP 操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Firewall Rule |
可选。 要更新的特定防火墙规则的名称。 |
Type |
必填。 要添加的 IP 范围的流量方向。 可能的值如下:
默认值为 |
IP Ranges |
必填。 要添加到防火墙规则中的 IP 地址范围(CIDR 表示法)的逗号分隔列表。 |
操作输出
从防火墙规则中移除 IP 操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例展示了使用从防火墙规则中移除 IP 操作时收到的 JSON 结果输出:
{
"kind": "compute#operation",
"id": "9160761312385876914",
"name": "operation-1716223324528-618e5619d1f93-174eac81-6b38200d",
"operationType": "patch",
"targetLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/firewalls/firewall-name",
"targetId": "7886634413370691799",
"status": "DONE",
"user": "compute-admin@project-id.iam.gserviceaccount.com",
"progress": 100,
"insertTime": "2024-05-20T09:42:05.150-07:00",
"startTime": "2024-05-20T09:42:05.164-07:00",
"endTime": "2024-05-20T09:42:09.381-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/operations/operation-1716223324528-618e5619d1f93-174eac81-6b38200d",
"firewall": {
"kind": "compute#firewall",
"id": "6297155974506248217",
"creationTimestamp": "2023-09-13T07:28:06.690-07:00",
"name": "firewall-name",
"description": "",
"network": "https://www.googleapis.com/compute/v1/projects/project-id/global/networks/vpc-network",
"priority": 1000,
"sourceRanges": [
"0.0.0.0/0"
],
"destinationRanges": [
"0.0.0.0/21"
],
"allowed": [
{
"IPProtocol": "tcp",
"ports": [
"22"
]
}
],
"direction": "INGRESS",
"logConfig": {
"enable": false
},
"disabled": false,
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/firewalls/firewall-name"
}
}
输出消息
从防火墙规则中移除 IP 操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Remove IP From Firewall Rule". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用从防火墙规则中移除 IP 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
移除影音平台标记
使用移除网络标记操作从 Compute Engine 实例中移除网络标记。
此操作不适用于 Google SecOps 实体。
操作输入
移除网络标记操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 要启动的实例的唯一 ID。 您可以使用列出实例操作检索此值。 如果您使用 |
Network Tags |
必填。 要添加到实例的网络标记的逗号分隔列表。 所有标记都只能包含小写字母、数字和连字符。 |
操作输出
移除网络标记操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例展示了使用 Example 操作时收到的 JSON 结果输出:
{
"kind": "compute#instance",
"id": "1459671903146615834",
"creationTimestamp": "2023-09-13T04:20:21.993-07:00",
"name": "instance-2",
"description": "",
"tags": {
"items": [
"another-tag",
"tag"
],
"fingerprint": "BCeEINC7Ths="
},
"machineType": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a/machineTypes/e2-micro",
"status": "RUNNING",
"zone": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a",
"canIpForward": false,
"networkInterfaces": [
{
"kind": "compute#networkInterface",
"network": "https://www.googleapis.com/compute/v1/projects/project-id/global/networks/default",
"subnetwork": "https://www.googleapis.com/compute/v1/projects/project-id/regions/us-central1/subnetworks/default",
"networkIP": "10.128.0.3",
"name": "nic0",
"fingerprint": "-ZnnV7hiDfs=",
"stackType": "IPV4_ONLY"
}
],
"disks": [
{
"kind": "compute#attachedDisk",
"type": "PERSISTENT",
"mode": "READ_WRITE",
"source": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a/disks/instance-2",
"deviceName": "instance-2",
"index": 0,
"boot": true,
"autoDelete": true,
"licenses": [
"https://www.googleapis.com/compute/v1/projects/centos-cloud/global/licenses/centos-7"
],
"interface": "SCSI",
"guestOsFeatures": [
{
"type": "UEFI_COMPATIBLE"
},
{
"type": "GVNIC"
}
],
"diskSizeGb": "20",
"architecture": "X86_64"
}
],
"metadata": {
"kind": "compute#metadata",
"fingerprint": "NBmH4-7Jw9U=",
"items": []
},
"serviceAccounts": [
{
"email": "1111111111-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"
]
}
],
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/zones/us-central1-a/instances/instance-2",
"scheduling": {
"onHostMaintenance": "MIGRATE",
"automaticRestart": true,
"preemptible": false,
"provisioningModel": "STANDARD"
},
"cpuPlatform": "Intel Broadwell",
"deletionProtection": false,
"shieldedInstanceConfig": {
"enableSecureBoot": false,
"enableVtpm": true,
"enableIntegrityMonitoring": true
}
}
输出消息
移除网络标记操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Remove Network Tags". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用移除网络标记操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
设置实例 IAM 政策
使用设置实例 IAM 政策操作可为指定资源设置访问权限控制政策。您在操作中提供的政策会替换任何现有政策。
此操作不适用于 Google SecOps 实体。
操作输入
设置实例 IAM 政策 操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 要启动的实例的唯一 ID。 您可以使用列出实例操作检索此值。 如果您使用 |
Policy |
必填。 要应用于实例的 IAM 政策文档,以 JSON 对象的形式提供。 |
操作输出
设置实例 IAM 政策操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例描述了使用设置实例 IAM 政策 操作时收到的 JSON 结果输出:
{
"version": 1,
"etag": "BwXBftu99FE=",
"bindings": [
{
"role": "roles/compute.networkViewer",
"members": [
"user:user@example.com"
]
}
]
}
输出消息
设置实例 IAM 政策操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Set Instance IAM Policy".
Reason:
ERROR_REASON
|
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用设置实例 IAM 政策操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
启动实例
使用启动实例操作可开启处于已停止或已终止状态的 Compute Engine 实例。
此操作不适用于 Google SecOps 实体。
操作输入
启动实例操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 要启动的实例的唯一 ID。 您可以使用列出实例操作检索此值。 如果您使用 |
操作输出
启动实例操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例介绍了使用启动实例操作时收到的 JSON 结果输出:
{
"id": "ID",
"name": "operation-OPERATION_ID",
"zone": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a",
"operationType": "start",
"targetLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/instances/INSTANCE_ID",
"targetId": "INSTANCE_ID",
"status": "DONE",
"user": "user@example.com",
"progress": 100,
"insertTime": "2021-04-28T23:01:29.395-07:00",
"startTime": "2021-04-28T23:01:29.397-07:00",
"endTime": "2021-04-28T23:01:29.397-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/operations/operation-OPERATION_ID",
"kind": "compute#operation"
}
输出消息
启动实例操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
|
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用 Start Instance 操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
停止实例
使用停止实例操作关闭正在运行的 Compute Engine 实例。您可以随时重启已停止的实例。
停止实例会停止虚拟机使用费,但除非删除关联的资源(例如永久性磁盘和静态 IP 地址),否则这些资源仍会继续产生费用。
此操作不适用于 Google SecOps 实体。
操作输入
停止实例操作需要以下参数:
| 参数 | 说明 |
|---|---|
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Instance Zone |
可选。 实例所在的具体可用区。 如果您使用 |
Instance ID |
可选。 要启动的实例的唯一 ID。 您可以使用列出实例操作检索此值。 如果您使用 |
操作输出
停止实例操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例介绍了使用停止实例操作时收到的 JSON 结果输出:
{
"id": "ID",
"name": "operation-OPERATION_ID",
"zone": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a",
"operationType": "stop",
"targetLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/instances/INSTANCE_ID",
"targetId": "INSTANCE_ID",
"status": "RUNNING",
"user": "user@example.com",
"progress": 100,
"insertTime": "2021-04-28T23:01:29.395-07:00",
"startTime": "2021-04-28T23:01:29.397-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/operations/operation-OPERATION_ID",
"kind": "compute#operation"
}
输出消息
停止实例操作可能会返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
|
操作成功。 |
Error executing action "Stop Instance". Reason:
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用停止实例操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
更新防火墙规则
使用更新防火墙规则操作修改现有 Compute Engine 防火墙规则的配置。此操作可让您在保持规则身份的同时更新特定参数。
此操作不适用于 Google SecOps 实体。
操作输入
更新防火墙规则操作需要以下参数:
| 参数 | 说明 |
|---|---|
Firewall Rule |
可选。 要更新的特定防火墙规则的名称。 |
Project ID |
可选。 与 Compute Engine 实例关联的项目的 ID。 如果未提供任何值,该操作会从集成配置中检索项目 ID。 |
Resource Name |
可选。 Compute Engine 实例的完整资源名称,格式为 此参数的优先级高于 |
Source IP Ranges |
可选。 以英文逗号分隔的防火墙规则的来源 IP 地址范围列表。 如果设置了 如果未提供值,则现有值保持不变。 |
Source Tags |
可选。 要应用于规则的源网络标记的英文逗号分隔列表。 如果设置了 如果未提供值,则现有值保持不变。 |
Source Service Accounts |
可选。 要应用于规则的源服务账号的英文逗号分隔列表。 如果设置了 如果未提供值,则现有值保持不变。 |
TCP Ports |
可选。 以英文逗号分隔的 TCP 端口或端口范围列表,用于允许或拒绝。 此参数支持 |
UDP Ports |
可选。 以英文逗号分隔的 UDP 端口或端口范围列表,用于允许或拒绝。 此参数支持 |
Other Protocols |
可选。 要包含在规则中的 TCP 和 UDP 以外的协议的逗号分隔列表。 如果设置了 |
Destination IP Ranges |
可选。 以英文逗号分隔的防火墙规则的目标 IP 地址范围列表。 如果设置了 如果未提供值,则现有值保持不变。 |
操作输出
更新防火墙规则操作提供以下输出:
| 操作输出类型 | 可用性 |
|---|---|
| 案例墙附件 | 不可用 |
| 案例墙链接 | 不可用 |
| “支持请求墙”表格 | 不可用 |
| 丰富化表 | 不可用 |
| JSON 结果 | 可用 |
| 输出消息 | 可用 |
| 脚本结果 | 可用 |
JSON 结果
以下示例描述了使用更新防火墙规则操作时收到的 JSON 结果输出:
{
"kind": "compute#operation",
"id": "9160761312385876914",
"name": "operation-1716223324528-618e5619d1f93-174eac81-6b38200d",
"operationType": "patch",
"targetLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/firewalls/firewall-name",
"targetId": "7886634413370691799",
"status": "DONE",
"user": "compute-admin@project-id.iam.gserviceaccount.com",
"progress": 100,g
"insertTime": "2024-05-20T09:42:05.150-07:00",
"startTime": "2024-05-20T09:42:05.164-07:00",
"endTime": "2024-05-20T09:42:09.381-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/operations/operation-1716223324528-618e5619d1f93-174eac81-6b38200d",
"firewall": {
"kind": "compute#firewall",
"id": "6297155974506248217",
"creationTimestamp": "2023-09-13T07:28:06.690-07:00",
"name": "firewall-name",
"description": "",
"network": "https://www.googleapis.com/compute/v1/projects/project-id/global/networks/vpc-network",
"priority": 1000,
"sourceRanges": [
"0.0.0.0/0"
],
"destinationRanges": [
"0.0.0.0/21"
],
"allowed": [
{
"IPProtocol": "tcp",
"ports": [
"22"
]
}
],
"direction": "INGRESS",
"logConfig": {
"enable": false
},
"disabled": false,
"selfLink": "https://www.googleapis.com/compute/v1/projects/project-id/global/firewalls/firewall-name"
}
}
输出消息
更新防火墙规则操作可以返回以下输出消息:
| 输出消息 | 消息说明 |
|---|---|
Successfully updated firewall rule in Cloud Compute.
|
操作成功。 |
Error executing action "Update Firewall Rule". Reason:
ERROR_REASON
|
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用更新防火墙规则操作时脚本结果输出的值:
| 脚本结果名称 | 值 |
|---|---|
is_success |
true 或 false |
需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。