收集 Neo4j Aura 記錄
本文說明如何使用 Google Cloud Storage V2,將 Neo4j Aura 記錄檔擷取至 Google Security Operations。
Neo4j Aura 是全代管雲端圖形資料庫服務,這項服務提供安全記錄和查詢記錄,可轉送至 Google Cloud Logging,適用於 AuraDB Business Critical、AuraDB Virtual Dedicated Cloud 和 AuraDS Enterprise 層級。
事前準備
請確認您已完成下列事前準備事項:
- Google SecOps 執行個體
- 已啟用 Cloud Storage API 的 GCP 專案
- 建立及管理 GCS bucket 的權限
- 管理 GCS bucket IAM 政策的權限
- 建立 Cloud Logging 記錄檔接收器的權限
- 在 Google Cloud Platform 上執行的 Neo4j Aura 執行個體
- Neo4j Aura 專案管理員角色
- 支援記錄轉送的 Neo4j Aura 層級 (AuraDB Business Critical、AuraDB Virtual Dedicated Cloud 或 AuraDS Enterprise)
建立 Google Cloud Storage bucket
- 前往 Google Cloud 控制台。
- 選取專案或建立新專案。
- 在導覽選單中,依序前往「Cloud Storage」>「Bucket」。
- 按一下「建立值區」。
提供下列設定詳細資料:
設定 值 為 bucket 命名 輸入全域不重複的名稱 (例如 neo4j-aura-logs)位置類型 請根據需求選擇 (區域、雙區域、多區域) 位置 選取位置 (例如 us-central1)儲存空間級別 標準 (建議用於經常存取的記錄) 存取控管 統一 (建議) 保護工具 選用:啟用物件版本管理或保留政策 點選「建立」。
設定 Neo4j Aura 記錄轉送至 Google Cloud Logging
Neo4j Aura 會將記錄檔轉送至 GCP 專案中的 Google Cloud Logging。這項設定是在 Neo4j Aura 控制台中完成。
- 前往 Neo4j Aura 控制台。
- 使用 Neo4j 帳戶登入。
- 在側欄中,依序前往「設定」> 記錄轉送」。
- 按一下「設定記錄轉送」。
- 選取記錄轉送範圍:
- AuraDB Business Critical:選取要轉送記錄檔的特定執行個體。
- AuraDB 虛擬專屬雲端:選取要轉送該區域中所有執行個體記錄的區域。
- AuraDS Enterprise:選取要轉送記錄的區域,系統會轉送該區域中所有執行個體的記錄。
選取要轉送的記錄類型:
- 安全性記錄:驗證事件、授權事件和安全性相關活動。
- 查詢記錄:在資料庫執行的 Cypher 查詢。
如果選取「Query logs」(查詢記錄),請展開「Filter」(篩選器) 區段,設定選用篩選器:
- 移除開頭項目:啟用後,系統只會轉送查詢結尾項目 (資料量約減少 50%)。
- 納入:選取「所有查詢」、「僅限成功查詢」或「僅限失敗查詢」。
按照精靈中的指示操作,完成 Google Cloud Platform 專屬步驟。
完成精靈設定,然後按一下「建立」或「儲存」。
等待狀態從「設定中」變更為「轉送中」。
建立 Cloud Logging 記錄檔接收器,將記錄檔匯出至 GCS
Neo4j Aura 將記錄轉送至 Google Cloud Logging 後,請建立記錄檔接收器,將這些記錄匯出至 GCS bucket。
- 在 GCP 控制台中,前往「Logging」> Log Router。
- 按一下「Create Sink」(建立接收器)。
提供下列設定詳細資料:
設定 值 接收器名稱 輸入名稱 (例如 neo4j-aura-to-gcs)接收器說明 輸入說明 (例如 Export Neo4j Aura logs to GCS for Chronicle)點選「下一步」。
在「選取接收器服務」部分,選取「Cloud Storage bucket」。
在「選取 Cloud Storage bucket」下拉式選單中,選取您建立的 bucket (例如
neo4j-aura-logs)。點選「下一步」。
在「選擇要納入接收器的記錄檔」部分,建立「包含」篩選器來選取 Neo4j Aura 記錄檔。
如要查看透過記錄轉送功能轉送的 Neo4j Aura 記錄,請使用下列篩選條件:
resource.type="generic_node" resource.labels.namespace="neo4j-aura"點選「下一步」。
查看接收器設定。
按一下「Create Sink」(建立接收器)。
確認記錄檔已匯出至 GCS
- 等待 2 到 3 小時,GCS bucket 中就會顯示第一批記錄項目。
- 在 GCP 控制台中,依序前往「Cloud Storage」>「Buckets」。
- 點按 bucket 名稱 (例如
neo4j-aura-logs)。 確認 bucket 中是否已建立記錄檔。
Cloud Logging 會依記錄類型和日期,以目錄階層的形式整理記錄。目錄結構類似於:
neo4j-aura-logs/ ├── security.log/ │ └── YYYY/ │ └── MM/ │ └── DD/ │ └── HH:MM:SS_HH:MM:SS_S0.json └── query.log/ └── YYYY/ └── MM/ └── DD/ └── HH:MM:SS_HH:MM:SS_S0.json
擷取 Google SecOps 服務帳戶
Google SecOps 會使用專屬服務帳戶,從 GCS bucket 讀取資料。您必須授予這個服務帳戶值區存取權。
取得服務帳戶電子郵件地址
- 依序前往「SIEM 設定」>「動態饋給」。
- 按一下「新增動態饋給」。
- 按一下「設定單一動態饋給」。
- 在「動態饋給名稱」欄位中輸入動態饋給名稱 (例如
Neo4j Aura Logs)。 - 選取「Google Cloud Storage V2」做為「來源類型」。
- 選取「NEO4J」做為「記錄類型」。
- 按一下「取得服務帳戶」。
系統會顯示專屬服務帳戶電子郵件地址。例如:
chronicle-12345678@chronicle-gcp-prod.iam.gserviceaccount.com複製這個電子郵件地址,下一個步驟將會用到。
點選「下一步」。
指定下列輸入參數的值:
儲存空間 bucket URL:輸入 GCS bucket URI:
gs://neo4j-aura-logs/請將
neo4j-aura-logs替換成實際的值區名稱。來源刪除選項:根據偏好選取刪除選項:
- 永不:一律不會在轉移後刪除任何檔案 (建議用於測試)。
- 刪除已轉移的檔案:在成功轉移後刪除檔案。
刪除已轉移的檔案和空白目錄:成功轉移檔案後,刪除檔案和空白目錄。
檔案存在時間上限:納入在過去天數內修改的檔案 (預設為 180 天)
資產命名空間:資產命名空間
擷取標籤:要套用至這個動態饋給事件的標籤
點選「下一步」。
在「Finalize」(完成) 畫面中檢查新的新聞動態消息設定,然後按一下「Submit」(提交)。
將 IAM 權限授予 Google SecOps 服務帳戶
Google SecOps 服務帳戶必須具備 GCS bucket 的 Storage 物件檢視者角色。
- 依序前往「Cloud Storage」 > 「Bucket」。
- 點選 bucket 名稱 (例如
neo4j-aura-logs)。 - 前往「權限」分頁標籤。
- 按一下「授予存取權」。
提供下列設定詳細資料:
- 新增主體:貼上 Google SecOps 服務帳戶電子郵件地址
- 指派角色:選取「Storage 物件檢視者」
按一下 [儲存]。
UDM 對應表
| 記錄欄位 | UDM 對應 | 邏輯 |
|---|---|---|
| id2 | about.resource.attribute.labels | 資源屬性的標籤 |
| id3 | about.resource.attribute.labels | |
| timestamp_msg | metadata.event_timestamp | 事件時間戳記 |
| event_type | metadata.event_type | 事件類型 |
| recordDate | principal.asset.creation_time | 資產建立時間 |
| 命名空間 | principal.domain.tech.product_object_id | 網域中的產品物件 ID |
| properties.host_group | principal.hostname | 來源主機名稱 |
| msg | principal.process.command_line | 程序的指令列 |
| user_id | principal.user.userid | 主體的使用者 ID |
| 角色 | roles.name | 角色名稱 |
| security_result | security_result | 安全性結果詳細資料 |
| levelx | security_result.severity | 嚴重性等級 |
| levelx | security_result.severity_details | 詳細嚴重程度資訊 |
| properties.source | src.resource.name | 來源資源名稱 |
| properties.cluster_node | target.hostname | 目的地主機名稱 |
| 資料庫 | target.resource.name | 目標資源名稱 |
| 角色 | target.user.attribute.roles | 與目標使用者相關聯的角色 |
| user_dest | target.user.userid | 目標的使用者 ID |
| metadata.product_name | metadata.product_name | 產品名稱 |
| metadata.vendor_name | metadata.vendor_name | 供應商名稱 |
變更記錄
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求解答。