將 Compute Engine 與 Google SecOps 整合

本文說明如何將 Compute Engine 與 Google Security Operations 整合。

用途

Compute Engine 整合功能會使用 Google SecOps 功能,支援下列用途:

  • 自動事件應變:自動將遭入侵的 Compute Engine 執行個體與網路隔離。自動圍堵功能可限制攻擊擴散、加快應變速度,並減輕資安團隊的工作負擔。

  • 威脅搜尋和調查:自動收集多個專案中 Compute Engine 執行個體的記錄和安全性遙測資料。分析這些整合資料,即可主動搜尋威脅,並透過自動收集資料加快調查速度。

  • 安全漏洞管理:將安全漏洞掃描工具與 Google SecOps 整合,自動掃描 Compute Engine 執行個體,找出已知的安全漏洞。直接產生修復單或修補安全漏洞,降低遭入侵的風險,並強化資安態勢。

  • 法規遵循自動化:自動收集 Compute Engine 執行個體的稽核記錄和設定資料,以符合法規要求。為稽核人員產生報表和資訊主頁,簡化法規遵循報告作業,並減少手動作業。

  • 安全性自動化調度管理:在多個Google Cloud 服務 (包括 Compute Engine) 之間自動調度管理安全性工作流程。例如,在偵測到執行個體發生安全性事件時,觸發建立新的防火牆規則,進而提升資安態勢的協調性和自動化程度。

事前準備

在 Google SecOps 中設定 Compute Engine 整合之前,請先完成下列必要步驟:

  1. 建立及設定自訂 Identity and Access Management 角色。

  2. 建立服務帳戶。

  3. 選擇並設定下列其中一種驗證方式:

    • 方法 1:Workload Identity (建議):這個方法會使用服務帳戶模擬功能,產生短期臨時存取權杖。

    • 方法 2:服務帳戶 JSON 金鑰:這個方法會使用靜態、長期有效的密鑰檔案。

建立自訂 IAM 角色

如要為整合項目提供管理執行個體所需的特定權限,請建立自訂角色:

  1. 在 Google Cloud 控制台,依序前往 「IAM & Admin」(IAM 與管理) >「Roles」(角色)。

    前往「Roles」(角色)

  2. 按一下「add」「Create custom role」(建立自訂角色)。

  3. 提供「Title」(標題) (例如 SecOps Compute Engine Integration)、「Description」(說明) 和不重複的「ID」。

  4. 將「Role Launch Stage」(角色推出階段) 設為「General Availability」(正式發布)。

  5. 按一下「新增權限」,然後新增下列項目:

    • compute.instances.list
    • compute.instances.start
    • compute.instances.stop
    • compute.instances.delete
    • compute.instances.setLabels
    • compute.instances.getIamPolicy
    • compute.instances.setIamPolicy
    • compute.instances.get
    • compute.zones.list
  6. 點選「建立」。

建立服務帳戶

  1. 在 Google Cloud 控制台,依序前往 「IAM & Admin」(IAM 與管理) >「Service Accounts」(服務帳戶)。

    前往「Service Accounts」(服務帳戶)

  2. 按一下「add」「Create Service Account」(建立服務帳戶)。

  3. 輸入名稱和說明,然後按一下「Create and Continue」(建立並繼續)。

  4. 在「Grant this service account access to project」(將專案存取權授予這個服務帳戶) 步驟中,指派您建立的自訂角色。

  5. 點按「Done」(完成)。記下服務帳戶的電子郵件地址。

設定 Workload Identity 憑證

建議使用 Workload Identity,因為這種方法會使用短期存取權杖,並透過服務帳戶模擬功能運作。

找出專屬執行個體身分

建立連線時,必須授予 Google SecOps 執行個體權限,才能模擬服務帳戶。

  1. 在 Google SecOps 中,依序前往 「Content Hub」 >「Response Integrations」。

  2. 選取「Compute Engine」整合,然後在 Workload Identity Email 中輸入服務帳戶電子郵件地址。

  3. 依序點選「儲存」 > 「測試」。測試預計會失敗。

  4. 按一下「Test」(測試) 旁的 close_small 按鈕,然後找出開頭為 gke-init-python@... 或 soar-python@... 的身分電子郵件。

  5. 複製這個專屬電子郵件地址。

在 Google Cloud中授權執行個體身分

  1. 在 Google Cloud 控制台,依序前往 「IAM & Admin」(IAM 與管理) >「Service Accounts」(服務帳戶)。

    前往「Service Accounts」(服務帳戶)

  2. 選取目標服務帳戶,然後依序前往 「Permissions」(權限) >「Grant Access」(授予存取權)。

  3. 將不重複的電子郵件地址貼到「New principals」(新增主體) 欄位,並指派「Service Account Token Creator」(服務帳戶權杖建立者) 角色 (roles/iam.serviceAccountTokenCreator)。

設定 JSON 金鑰

靜態、長期有效的密鑰檔案需要手動輪替。只有在無法使用 Workload Identity 驗證時,才應採用這個方法。

  1. 在 Google Cloud 控制台中,依序前往 「IAM & Admin」(IAM 與管理) >「Service Accounts」(服務帳戶),然後選取 服務帳戶。

    前往「Service Accounts」(服務帳戶)

  2. 前往「金鑰」分頁,依序點選「新增金鑰」 > 「建立新的金鑰」。

  3. 選取「JSON」,然後點選「建立」。檔案會自動下載到電腦。

手動設定個別參數

如果您選擇手動輸入憑證,請在文字編輯器中開啟下載的 JSON 金鑰檔案,複製整合設定所需的個別值。

整合參數

如要建立 Google SecOps 與 Compute Engine 之間的連線,您必須設定下列參數。這項整合支援三種不同的驗證路徑。請選擇下列其中一種方法提供憑證:

  • Workload Identity:使用 Workload Identity Email。
  • 服務帳戶 JSON 檔案:使用 Service Account Json File Content 一次提供完整金鑰。
  • 手動個別參數:使用從 JSON 金鑰手動複製的個別欄位。
參數 說明
API Root

選填。

Compute Engine API 的基準網址。

預設值為 https://compute.googleapis.com。

OS Config API Root

選填。

Cloud OS Config API 的基準網址。

預設值為 https://osconfig.googleapis.com。

Workload Identity Email

選填。

服務帳戶的用戶端電子郵件地址。請使用這個帳戶進行 Workload Identity 驗證。

Service Account Json File Content

選填。

服務帳戶金鑰 JSON 檔案的完整內容。

如果設定這項參數,整合功能會忽略個別憑證參數。

Project ID

選填。

要指定的 Google Cloud 專案 ID。

如未提供任何值,整合作業會從服務帳戶憑證擷取 ID。

Verify SSL

這是必填欄位。

驗證連線的 SSL 憑證。(預設為啟用)。

個人憑證參數

只有在手動輸入憑證,而非使用完整 JSON 檔案內容或 Workload Identity 時,才使用下列參數。

參數 說明
Account Type

選填。

JSON 金鑰 type 欄位中的值 (通常為 service_account)。

Private Key ID

選填。

JSON 金鑰 private_key_id 欄位中的值。

Private Key

選填。

JSON 金鑰 private_key 欄位中的值。

Client Email

選填。

JSON 金鑰 client_email 欄位中的值。

Client ID

選填。

JSON 金鑰 client_id 欄位中的值。

Auth URI

選填。

JSON 金鑰 auth_uri 欄位中的值。

預設值為 https://accounts.google.com/o/oauth2/auth。

Token URI

選填。

JSON 金鑰 token_uri 欄位中的值。

預設為 https://oauth2.googleapis.com/token。

Auth Provider X509 URL

選填。

JSON 金鑰 auth_provider_x509_cert_url 欄位中的值。

Client X509 URL

選填。

JSON 金鑰 client_x509_cert_url 欄位中的值。

如要瞭解如何在 Google SecOps 中設定整合功能,請參閱「設定整合功能」。

如有需要,您可以在後續階段進行變更。設定整合執行個體後,即可在應對手冊中使用。如要進一步瞭解如何設定及支援多個執行個體,請參閱「支援多個執行個體」。

動作

如要進一步瞭解動作,請參閱「 在工作區回應待處理動作」和「在案件中執行手動動作」。

將 IP 新增至防火牆規則

使用「Add IP Range to Firewall Rule」(將 IP 範圍新增至防火牆規則) 動作,將 IP 範圍附加至 Compute Engine 執行個體中的現有防火牆規則。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Add IP To Firewall Rule」動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /projects/PROJECT_ID/global/ firewallsFIREWALL。

這個參數的優先順序高於 Project ID 和 Firewall Rule。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案名稱。

如未提供任何值,動作會使用整合設定中的專案 ID。

Firewall Rule

選填。

要更新的特定防火牆規則名稱。

Type

這是必填欄位。

新增 IP 範圍的流量方向。

可能的值如下:

  • Source
  • Destination

預設值為 Source。

IP Ranges

這是必填欄位。

以半形逗號分隔的 IP 位址範圍清單 (CIDR 標記法),用於新增至防火牆規則。

動作輸出內容

「Add IP To Firewall Rule」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例顯示使用「Add IP To Firewall Rule」動作時,收到的 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"
  }
}
輸出訊息

Add IP To Firewall Rule 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully updated firewall rule in Google Cloud Compute.

Waiting for the operation to finish execution on the RESOURCE_PATH instance in Google Cloud Compute.

動作成功。
Error executing action "Add IP To Firewall Rule". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Add IP To Firewall Rule」(將 IP 新增至防火牆規則) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

為執行個體新增標籤

使用「Add Labels to Instance」(為執行個體新增標籤) 動作,新增或更新特定 Compute Engine 執行個體的標籤。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Add Labels to Instance」(為執行個體新增標籤) 動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

Instance ID

選填。

Compute Engine 執行個體的專屬 ID。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

Instance Labels

這是必填欄位。

要套用至執行個體的標籤清單 (以半形逗號分隔),格式為 key:value (例如 vm_label_key:label1)。

動作輸出內容

「Add Labels to Instance」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例說明使用「Add Labels to Instance」(為執行個體新增標籤) 動作時,收到的 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"
}
輸出訊息

「Add Labels to Instance」(為執行個體新增標籤) 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Labels LABEL_LIST were successfully added to Compute Engine instance INSTANCE_ID.

Provided instance zone ZONE_ID is not valid.

Provided instance ID is not valid.

Labels were not added because provided label LABEL_ID has the key that already exist for the Compute Engine instance INSTANCE_ID.

動作成功。
Error executing action "Add Labels to Instance". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Add Labels to Instance」(為執行個體新增標籤) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

新增網路標記

使用「Add Network Tags」(新增網路標記) 動作,將一或多個網路標記附加至特定 Compute Engine 執行個體。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「新增網路標記」動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

Instance ID

選填。

Compute Engine 執行個體的專屬 ID。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

Network Tags

這是必填欄位。

要新增至執行個體的網路標記清單,以半形逗號分隔。

所有標記只能使用小寫英文字母、數字和連字號。

動作輸出內容

「新增網路標記」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例顯示使用「Add Network Tags」(新增網路標記) 動作時,收到的 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
  }
}
輸出訊息

「新增網路標記」動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully added network tags to the instance RESOURCE_PATH in Compute Engine.

Waiting for the operation to finish execution on the RESOURCE_PATH instance in Compute Engine.

動作成功。
Error executing action "Add Network Tags". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Add Network Tags」(新增網路標記) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

刪除執行個體

使用「刪除執行個體」動作刪除 Compute Engine 執行個體。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Delete Instance」動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

Instance ID

選填。

要啟動的執行個體專屬 ID。

您可以使用「List Instances」動作擷取這個值。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

動作輸出內容

「Delete Instance」(刪除執行個體) 動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例說明使用「Delete Instance」動作時,收到的 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」動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Compute Engine instance INSTANCE_ID was deleted successfully.

Provided instance zone ZONE_ID is not valid.

Provided instance ID is not valid.

動作成功。

Error executing action "Start Instance". Reason: ERROR_REASON

Provided resource RESOURCE_PATH is not valid

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Delete Instance」(刪除執行個體) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

充實實體

使用「Enrich Entities」動作,以 Compute Engine 的執行個體資訊擴充 Google SecOps IP Address 實體。

這項動作會在下列 Google SecOps 實體上執行:

  • IP Address

動作輸入內容

「Enrich Entities」動作需要下列參數:

參數 說明
Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

動作輸出內容

「Enrich Entities」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 可用
補充資訊表格 可用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
案件總覽表格

執行完畢後,「Enrich Entities」(充實實體) 動作會提供下列資料表:

表格名稱:ENTITY 擴充表格

欄:

  • 實體欄位
  • 值
補充資訊表格

「Enrich Entities」(擴充實體) 動作支援下列實體擴充:

補充資料欄位 來源 (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 結果

以下範例說明使用「Enrich Entities」動作時,收到的 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"
}
輸出訊息

「Enrich Entities」動作可傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully enriched entities: ENTITY_ID.

Provided instance zone ZONE_ID is not valid.

Action was not able to find a match Compute Engine to enrich provided entities: ENTITY_ID.

No entities were enriched.

動作成功。
Error executing action "Enrich Entities". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Enrich Entities」動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

執行 VM 修補工作

使用「Execute VM Patch Job」(執行 VM 修補工作) 動作,在 Compute Engine 執行個體上執行 VM 修補工作。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Execute VM Patch Job」(執行 VM 修補工作) 動作需要下列參數:

參數 說明
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

這是必填欄位。

修補工作的執行時間上限 (以分鐘為單位)。

預設值為 60。

Rollout Strategy

選填。

在多個可用區部署修補程式的方法。

可能的值如下:

  • Zone By Zone:一次只會對一個可用區套用修補程式,盡可能降低風險。
  • Concurrent Zones:修補程式會同時套用至所有目標可用區,縮短總維護期間。

預設值為 Zone By Zone。

Disruption Budget

這是必填欄位。

可同時離線的執行個體數量或百分比 (例如 5 或 10%)。

預設值為 10%。

Wait For Completion

這是必填欄位。

如果選取,動作會保持啟用狀態,直到修補工作完成。

(預設為啟用)。

Fail If Completed With Errors

這是必填欄位。

如果選取這個選項,當工作狀態為 Completed with errors 或達到逾時限制時,動作就會失敗。

如果停用 Wait For Completion,系統會忽略這個參數。

(預設為啟用)。

動作輸出內容

「Execute VM Patch Job」(執行 VM 修補工作) 動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例顯示使用「Execute VM Patch Job」(執行 VM 修補工作) 動作時,收到的 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
                }
            }
        }
輸出訊息

「Execute VM Patch Job」(執行 VM 修補工作) 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully executed VM patching job in Google Cloud Compute.

Successfully executed and completed VM patching job in Google Cloud Compute.

The executed patching job was canceled in Google Cloud Compute.

The executed patching job was completed, but with errors in Compute Engine. Errors: ERROR_DESCRIPTION

動作成功。
Error executing action "Execute VM Patch Job". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Execute VM Patch Job」(執行 VM 修補工作) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

取得執行個體 IAM 政策

使用「Get Instance IAM Policy」(取得執行個體 IAM 政策) 動作,擷取特定 Compute Engine 資源的 Identity and Access Management (iam_name_short) 存取控管政策。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Get Instance IAM Policy」(取得執行個體 IAM 政策) 動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

Instance ID

選填。

要啟動的執行個體專屬 ID。

您可以使用「List Instances」動作擷取這個值。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這個參數。

動作輸出內容

「Get Instance IAM Policy」(取得執行個體 IAM 政策) 動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例說明使用「Get Instance IAM Policy」(取得執行個體 IAM 政策) 動作時,收到的 JSON 結果輸出內容:

{
    "version": 1,
    "etag": "BwXBfsc47MI=",
    "bindings": [
        {
            "role": "roles/compute.networkViewer_withcond_2f0c00",
            "members": [
                "user:user@example.com"
            ]
        }
    ]
}
輸出訊息

「Get Instance IAM Policy」(取得執行個體 IAM 政策) 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Compute Engine instance INSTANCE_ID IAM policy was fetched successfully.

Provided instance zone ZONE_ID is not valid.

Provided instance ID is not valid.

動作成功。
Error executing action "Get Instance IAM Policy". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Get Instance IAM Policy」動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

可列出執行個體

使用「List Instances」(列出執行個體) 動作,根據指定的搜尋條件列出 Compute Engine 執行個體。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「List Instances」(列出執行個體) 動作需要下列參數:

參數 說明
Project ID

選填。

要列出執行個體的專案 ID。

如未提供值,這項動作會從整合設定中使用的 Google Cloud 服務帳戶擷取專案 ID。

Instance Zone

選填。

要搜尋執行個體的特定可用區。

如未提供值,動作會搜尋所有可用區域。

Instance Name

選填。

要搜尋的執行個體名稱。

這個參數接受多個值,請以半形逗號分隔。

Instance Status

選填。

要納入搜尋結果的執行個體目前狀態,例如 RUNNING 或 TERMINATED。

這個參數接受多個值,請以半形逗號分隔。

Instance Labels

選填。

用於篩選執行個體結果的標籤,格式為 key:value (例如 env:production)。

這個參數接受多個值,請以半形逗號分隔。

Max Rows to Return

選填。

結果中要傳回的執行個體數量上限。

預設值為 50。

動作輸出內容

「List Instances」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 可用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
案件總覽表格

「List Instances」動作會提供下表:

資料表名稱:Compute Engine 執行個體

表格欄:

  • 執行個體名稱
  • 執行個體 ID
  • 執行個體建立時間
  • 執行個體說明
  • 執行個體類型
  • 執行個體狀態
  • 執行個體標籤
JSON 結果

以下範例說明使用「List Instances」動作時,收到的 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"
       }
   ]
}
輸出訊息

「List Instances」動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully fetched Compute Engine instances.

Provided instance zone ZONE_ID is not valid.

No instances were found in Compute Engine.

動作成功。
Error executing action "List Instances". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「List Instances」動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

乒乓

使用 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 位址

使用「Remove External IP Addresses」(移除外部 IP 位址) 動作,移除 Compute Engine 執行個體的外部 IP 位址。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Remove External IP Addresses」(移除外部 IP 位址) 動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Instance ID

選填。

要啟動的執行個體專屬 ID。

您可以使用「List Instances」動作擷取這個值。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Network Interfaces

選填。

以半形逗號分隔的清單,列出要修改的特定網路介面。

如未提供值或使用 * 萬用字元,這項動作會更新所有網路介面。

預設值為 *。

動作輸出內容

「Remove External IP Addresses」(移除外部 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"
    }
]
輸出訊息

「Remove External IP Addresses」(移除外部 IP 位址) 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully removed external IP addresses from RESOURCE_PATH instance in INTEGRATION_NAME.

Waiting for the operation to finish execution on the RESOURCE_PATH instance in INTEGRATION_NAME.

動作成功。

Error executing action "Remove External IP Addresses". Reason: ERROR_REASON

Action ran into a timeout during execution. Pending operations: PENDING_OPERATIONS. Please increase the timeout in IDE.

The following network interfaces were not found: INTERFACES on the RESOURCE_PATH in INTEGRATION_NAME. Please check the spelling.

Provided instance zone is not valid.

Provided instance ID is not valid.

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「移除外部 IP 位址」動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

從防火牆規則中移除 IP

使用「Remove IP From Firewall Rule」(從防火牆規則中移除 IP) 動作,從現有的 Compute Engine 防火牆規則中刪除特定 IP 位址範圍。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Remove IP From Firewall Rule」動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /projects/PROJECT_ID/global/ firewallsFIREWALL。

這個參數的優先順序高於 Project ID 和 Firewall Rule。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Firewall Rule

選填。

要更新的特定防火牆規則名稱。

Type

這是必填欄位。

新增 IP 範圍的流量方向。

可能的值如下:

  • Source
  • Destination

預設值為 Source。

IP Ranges

這是必填欄位。

以半形逗號分隔的 IP 位址範圍清單 (CIDR 標記法),用於新增至防火牆規則。

動作輸出內容

「Remove IP From Firewall Rule」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例顯示使用「Remove IP From Firewall Rule」動作時,收到的 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"
  }
}
輸出訊息

「Remove IP From Firewall Rule」動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully updated firewall rule in Google Cloud Compute.

Waiting for the operation to finish execution on the RESOURCE_PATH instance in Google Cloud Compute.

動作成功。
Error executing action "Remove IP From Firewall Rule". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Remove IP From Firewall Rule」動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

移除網路標記

使用「Remove Network Tags」(移除網路標記) 動作,從 Compute Engine 執行個體移除網路標記。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

移除網路標記動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Instance ID

選填。

要啟動的執行個體專屬 ID。

您可以使用「List Instances」動作擷取這個值。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Network Tags

這是必填欄位。

要新增至執行個體的網路標記清單,以半形逗號分隔。

所有標記只能使用小寫英文字母、數字和連字號。

動作輸出內容

「Remove 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
  }
}
輸出訊息

「Remove Network Tags」(移除網路標記) 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully removed network tags from the instance RESOURCE_PATH in Compute Engine.

Waiting for the operation to finish execution on the RESOURCE_PATH instance in Compute Engine.

動作成功。
Error executing action "Remove Network Tags". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Remove Network Tags」(移除網路標記) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

設定執行個體 IAM 政策

使用「Set Instance IAM Policy」(設定執行個體 IAM 政策) 動作,設定指定資源的存取控管政策。您在動作中提供的政策會取代任何現有政策。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Set Instance IAM Policy」(設定執行個體 IAM 政策) 動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Instance ID

選填。

要啟動的執行個體專屬 ID。

您可以使用「List Instances」動作擷取這個值。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Policy

這是必填欄位。

要套用至執行個體的 IAM 政策文件,以 JSON 物件形式提供。

動作輸出內容

「Set Instance IAM Policy」(設定執行個體 IAM 政策) 動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例說明使用「Set Instance IAM Policy」(設定執行個體 IAM 政策) 動作時,收到的 JSON 結果輸出內容:

{
    "version": 1,
    "etag": "BwXBftu99FE=",
    "bindings": [
        {
            "role": "roles/compute.networkViewer",
            "members": [
                "user:user@example.com"
            ]
        }
    ]
}
輸出訊息

「Set Instance IAM Policy」(設定執行個體 IAM 政策) 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully set new IAM policy for the Compute Engine instance INSTANCE_ID.

Provided instance zone ZONE_ID is not valid.

Provided instance ID INSTANCE_ID is not valid.

Provided policy JSON document POLICY is not valid.

動作成功。
Error executing action "Set Instance IAM Policy". Reason: ERROR_REASON

Provided resource RESOURCE is not valid.

Error executing action "Set Instance IAM Policy". Reason: "Resource Name" or "Instance Zone" and "Instance ID" needs to be provided.

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Set Instance IAM Policy」(設定執行個體 IAM 政策) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

啟動執行個體

使用「Start Instance」(啟動執行個體) 動作,開啟處於停止或終止狀態的 Compute Engine 執行個體。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Start Instance」動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Instance ID

選填。

要啟動的執行個體專屬 ID。

您可以使用「List Instances」動作擷取這個值。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

動作輸出內容

「Start Instance」(啟動執行個體) 動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例說明使用「Start Instance」(啟動執行個體) 動作時,收到的 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」(啟動執行個體) 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Compute Engine instance RESOURCE_PATH was started successfully.

Provided instance zone ZONE_ID is not valid.

Provided instance ID is not valid.

動作成功。

Error executing action "Start Instance". Reason: ERROR_REASON

Error executing action "Start Instance". Reason: You should provide either "Resource name" or "Instance Zone" and "Instance ID" parameters.

Error executing action "Start Instance". Reason: Given resource name string does not match expected pattern.

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Start Instance」(啟動執行個體) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

停止執行個體

使用「停止執行個體」動作,關閉執行中的 Compute Engine 執行個體。您隨時可以重新啟動已停止的執行個體。

停止執行個體後,VM 使用費就會停止,但相關聯的資源 (例如永久磁碟和靜態 IP 位址) 仍會繼續產生費用,除非刪除這些資源。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Stop Instance」(停止執行個體) 動作需要下列參數:

參數 說明
Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /project/PROJECT_ID/zone/ ZONE_ID/instances/ INSTANCE_ID。

這個參數的優先順序高於 Project ID、Instance Zone 和 Instance ID。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Instance Zone

選填。

執行個體所在的特定可用區。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

Instance ID

選填。

要啟動的執行個體專屬 ID。

您可以使用「List Instances」動作擷取這個值。

如果您使用 Instance Zone 和 Instance ID 識別執行個體,則必須提供這項參數。

動作輸出內容

「Stop Instance」(停止執行個體) 動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例說明使用「Stop Instance」(停止執行個體) 動作時,收到的 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"
}
輸出訊息

「Stop Instance」動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Compute Engine instance INSTANCE_ID was stopped successfully.

Provided instance zone ZONE_ID is not valid.

Provided instance ID is not valid.

動作成功。
Error executing action "Stop Instance". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「Stop Instance」(停止執行個體) 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

更新防火牆規則

使用「Update Firewall Rule」(更新防火牆規則) 動作,修改現有 Compute Engine 防火牆規則的設定。這項操作可讓您更新特定參數,同時保留規則的身分。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Update Firewall Rule」(更新防火牆規則) 動作需要下列參數:

參數 說明
Firewall Rule

選填。

要更新的特定防火牆規則名稱。

Project ID

選填。

與 Compute Engine 執行個體相關聯的專案 ID。

如未提供任何值,這項動作會從整合設定擷取專案 ID。

Resource Name

選填。

Compute Engine 執行個體的完整資源名稱,格式為 /projects/PROJECT_ID/global/ firewallsFIREWALL。

這個參數的優先順序高於 Project ID 和 Firewall Rule。

Source IP Ranges

選填。

以半形逗號分隔的清單,列出防火牆規則的來源 IP 位址範圍。

如果設定 none 值,這項動作會刪除規則中所有現有的來源 IP 範圍。

如果未提供值,現有值會維持不變。

Source Tags

選填。

以半形逗號分隔的清單,列出要套用至規則的來源網路標記。

如果設定 none 值,這項動作會從規則中刪除所有現有的來源標記。

如果未提供值,現有值會維持不變。

Source Service Accounts

選填。

以半形逗號分隔的清單,列出要套用至規則的來源服務帳戶。

如果設定 none 值,這項動作會從規則中刪除所有現有的來源服務帳戶。

如果未提供值,現有值會維持不變。

TCP Ports

選填。

以半形逗號分隔的 TCP 通訊埠或通訊埠範圍清單,用於允許或拒絕流量。

這項參數支援 all 和 none 值。如果設定,這項動作會使用這個值更新防火牆規則的通訊協定和通訊埠清單。

UDP Ports

選填。

以半形逗號分隔的 UDP 通訊埠或通訊埠範圍清單,用於允許或拒絕。

這項參數支援 all 和 none 值。如果設定,這項動作會使用這個值更新防火牆規則的通訊協定和通訊埠清單。

Other Protocols

選填。

以半形逗號分隔的清單,列出要納入規則的通訊協定 (TCP 和 UDP 除外)。

如果設定 none 值,動作會使用這個值更新防火牆規則的通訊協定清單。

Destination IP Ranges

選填。

防火牆規則的目的地 IP 位址範圍清單,以半形逗號分隔。

如果設定 none 值,這項動作會從規則中刪除所有現有的目的地 IP 範圍。

如果未提供值,現有值會維持不變。

動作輸出內容

「Update Firewall Rule」(更新防火牆規則) 動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例說明使用「Update Firewall Rule」動作時,收到的 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"
  }
}
輸出訊息

「Update Firewall Rule」動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明
Successfully updated firewall rule in Cloud Compute.

Updating firewall rule in Cloud Compute.

動作成功。
Error executing action "Update Firewall Rule". Reason: ERROR_REASON

Provided firewall name is not valid.

Action ran into a timeout during execution. Please increase the timeout in IDE.

You must provide at least some parameter to update the firewall rule with.

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

下表列出使用「更新防火牆規則」動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求解答。