Cloud Logging

本文將說明如何整合 Cloud Logging 與 Google Security Operations SOAR。

整合版本:1.0

事前準備

如要使用整合功能,您需要 Google Cloud 服務帳戶。你可以使用現有的服務帳戶,也可以建立新的服務帳戶。

建立服務帳戶

如需建立服務帳戶的指引,請參閱「建立服務帳戶」。

如果您使用服務帳戶向 Google Cloud進行驗證,可以建立 JSON 格式的服務帳戶金鑰,並在設定整合參數時提供下載的 JSON 檔案內容。

基於安全性考量,建議您使用工作負載身分電子郵件地址,不要使用服務帳戶金鑰。如要進一步瞭解工作負載身分,請參閱「工作負載身分」。

將 Cloud Logging 與 Google SecOps SOAR 整合

與 Cloud Logging 整合需要下列參數:

參數 說明
Workload Identity Email 選用

工作負載身分識別的用戶端電子郵件地址。

您可以設定這個參數或 User's Service Account 參數。

如要使用工作負載身分電子郵件地址模擬服務帳戶,請將 Service Account Token Creator 角色授予服務帳戶。如要進一步瞭解 Workload Identity,以及如何使用這項功能,請參閱「工作負載的身分」。

User's Service Account 選用

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

您可以設定這個參數或 Workload Identity Email 參數。

如要設定這個參數,請提供您在建立服務帳戶時下載的服務帳戶金鑰 JSON 檔案完整內容。

如要進一步瞭解如何使用服務帳戶做為驗證方法,請參閱服務帳戶總覽

Quota Project ID 選用

您用於 Google Cloud API 和帳單的專案 ID。 Google Cloud 如要使用這個參數,您必須將 Service Usage Consumer 角色授予服務帳戶。

整合功能會將這個參數值附加至所有 API 要求。

如未設定這個參數的值,整合服務會從 Google Cloud 服務帳戶擷取配額專案 ID。

Organization ID 選用

要在整合中使用的機構 ID。

如未設定這個參數的值,整合服務會從 Google Cloud 服務帳戶擷取專案 ID。

Project ID 選用

要在整合中使用的專案 ID。

如未設定這個參數的值,整合服務會從 Google Cloud 服務帳戶擷取專案 ID。

Verify SSL 必要

如果選取這個選項,整合服務會驗證連線至 Cloud Logging 的 SSL 憑證是否有效。

(此為預設選項)。

如需在 Google SecOps 中設定整合功能的操作說明,請參閱「設定整合功能」。

如有需要,您之後可以變更。設定整合執行個體後,您就可以在劇本中使用該執行個體。如要進一步瞭解如何設定及支援多個執行個體,請參閱「支援多個執行個體」。

動作

與 Cloud Logging 整合後,您可以執行下列動作:

執行查詢

使用「執行查詢」動作,在 Cloud Logging 中執行自訂查詢。

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

動作輸入內容

「執行查詢」動作需要下列參數:

參數 說明
Project ID 選用

要在整合中使用的專案 ID。

如未設定這個參數的值,整合服務會從 Google Cloud 服務帳戶擷取專案 ID。

Organization ID 選用

要在整合中使用的機構 ID。

如未設定這個參數的值,整合服務會從 Google Cloud 服務帳戶擷取專案 ID。

Query 必要

用於尋找記錄的查詢。

Time Frame 選用

要擷取結果的期間。

如果選取 Custom,請同時設定 Start Time 參數。

可能的值如下:

  • Last Hour
  • Last 6 Hours
  • Last 24 Hours
  • Last Week
  • Last Month
  • Custom
預設值為 Last Hour
Start Time 選用

擷取結果的開始時間。

如果您為 Time Frame 參數選取 Custom 選項,則必須提供這項參數。

如要設定這個參數,請使用 ISO 8601 格式。

End Time 選用

擷取結果的結束時間。

如果您未設定這個參數的值,並為 Time Frame 參數選取 Custom 選項,則動作會使用目前時間做為結束時間。

如要設定這個參數,請使用 ISO 8601 格式。

Max Results To Return 選用

要傳回的結果數上限。

預設值為 50。

動作輸出內容

「執行查詢」動作會提供下列輸出內容:

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

以下範例說明使用「執行查詢」動作時收到的 JSON 結果輸出:

[{
    "protoPayload": {
        "@type": "type.googleapis.com/google.cloud.audit.AuditLog",
        "authenticationInfo": {
            "principalEmail": "system:clouddns"
        },
        "authorizationInfo": [
            {
                "granted": true,
                "permission": "io.k8s.coordination.v1.leases.update",
                "resource": "coordination.k8s.io/v1/namespaces/kube-system/leases/clouddns-lock"
            }
        ],
        "methodName": "io.k8s.coordination.v1.leases.update",
        "requestMetadata": {
            "callerIp": "192.0.2.6",
            "callerSuppliedUserAgent": "clouddns-leader-election"
        },
        "resourceName": "coordination.k8s.io/v1/namespaces/kube-system/leases/clouddns-lock",
        "serviceName": "k8s.io",
        "status": {
            "code": 0
        }
    },
    "insertId": "ID",
    "resource": {
        "type": "k8s_cluster",
        "labels": {
            "cluster_name": "CLUSTER_NAME",
            "project_id": "PROJECT_ID",
            "location": "us-central1"
        }
    },
    "timestamp": "2024-09-18T09:46:38.647428Z",
    "labels": {
        "authorization.k8s.io/reason": "RBAC: allowed by ClusterRoleBinding \"system:clouddns\" of ClusterRole \"system:clouddns-role\" to User \"system:clouddns\"",
        "authorization.k8s.io/decision": "allow"
    },
    "logName": "projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity",
    "operation": {
        "id": "ID",
        "producer": "k8s.io",
        "first": true,
        "last": true
    },
    "receiveTimestamp": "2024-09-18T09:46:39.063264993Z"
}]
輸出訊息

「執行查詢」動作會提供下列輸出訊息:

輸出訊息 訊息說明

Successfully executed query "QUERY" in Cloud Logging.

No results were found for the provided query.

動作成功。
Error executing action "Execute Query". Reason: ERROR_REASON

動作失敗。

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

指令碼結果

下表說明使用「執行查詢」動作時,指令碼結果輸出的值:

指令碼結果名稱
is_success TrueFalse

乒乓

使用「Ping」動作測試與 Cloud Logging 的連線。

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

動作輸入內容

動作輸出內容

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

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

「Ping」動作會提供下列輸出訊息:

輸出訊息 訊息說明
Successfully connected to the Cloud Logging server with the provided connection parameters! 動作成功。
Failed to connect to the Cloud Logging server! Error is ERROR_REASON

動作失敗。

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

指令碼結果

下表說明使用 Ping 動作時,指令碼結果輸出的值:

指令碼結果名稱
is_success TrueFalse

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