使用部署為 Cloud Run 函式的擷取指令碼
Google Security Operations 提供一組以 Python 編寫的擷取指令碼,可部署為 Cloud Run 函式。這些指令碼可讓您從下列記錄來源擷取資料 (依名稱和記錄類型列出)。
- Armis Google SecOps Integration
- Aruba Central (
ARUBA_CENTRAL) - Azure Event Hub (configurable log type)
- Box (
BOX) - Citrix Cloud audit logs (
CITRIX_MONITOR) - Citrix session metadata (
CITRIX_SESSION_METADATA) - Cloud Storage (configurable log type)
- Duo Activity (
DUO_ACTIVITY) - Duo Admin (
DUO_ADMIN) - MISP (
MISP_IOC) - OneLogin (
ONELOGIN_SSO) - OneLogin user context (
ONELOGIN_USER_CONTEXT) - Proofpoint (configurable log type)
- Pub/Sub (configurable log type)
- Slack audit logs (
SLACK_AUDIT) - STIX/TAXII threat intelligence (
STIX) - Tenable.io (
TENABLE_IO) - Trend Micro Cloud App Security (configurable log type)
- Trend Micro Vision One audit logs (
TREND_MICRO_VISION_AUDIT)
這些指令碼位於 Google SecOps GitHub 存放區。
已知限制:在 無狀態環境 (例如 Cloud Run 函式) 中使用這些指令碼時,由於缺少檢查點功能,可能無法將所有記錄檔傳送至 Google SecOps。Google SecOps 已使用 Python 3.9 執行階段測試指令碼。
事前準備
請參閱下列資源,瞭解背景資訊和脈絡,以便有效使用 Google SecOps 擷取指令碼。
- 如要瞭解如何從本機部署 Cloud Run 函式,請參閱「部署 Cloud Run 函式」。
- 建立及存取密鑰說明如何使用 Secret Manager。您需要這個值區來儲存及存取 Google SecOps 服務帳戶 JSON 檔案。
- 安裝 Google Cloud CLI。您將使用這個檔案部署 Cloud Run 函式。
- 如果您打算從 Pub/Sub 擷取資料,請參閱 Google Cloud Pub/Sub 說明文件。
為單一記錄類型組裝檔案
Google SecOps GitHub 中的每個子目錄都包含檔案,可擷取單一 Google SecOps 記錄類型的資料。指令碼會連線至單一來源裝置,然後使用 Ingestion API 將原始記錄傳送至 Google SecOps。建議您將每種記錄類型部署為個別的 Cloud Run 函式。存取 Google SecOps GitHub 存放區中的指令碼。GitHub 中的每個子目錄都包含下列檔案,這些檔案專屬於擷取的記錄類型。
main.py是記錄類型專用的擷取指令碼。這個外掛程式會連線至來源裝置,並將資料擷取至 Google SecOps。.env.yml儲存 Python 指令碼所需的設定,且專用於部署作業。修改這個檔案,設定擷取指令碼所需的設定參數。README.md提供設定參數的相關資訊。Requirements.txt會定義擷取指令碼所需的依附元件。此外,common資料夾包含所有擷取指令碼依附的公用程式函式。
請按照下列步驟組裝檔案,以便擷取單一記錄類型的資料:
- 建立部署目錄,儲存 Cloud Run 函式的檔案。 其中包含部署作業所需的所有檔案。
- 將所選記錄類型 (例如 OneLogin 使用者環境) 的 GitHub 子目錄中所有檔案,複製到這個部署目錄。
- 將
common資料夾和所有內容複製到部署目錄。 目錄內容類似於下方內容:
one_login_user ├─common │ ├─__init__.py │ ├─auth.py │ ├─env_constants.py │ ├─ingest.py │ ├─status.py │ └─utils.py ├─env.yml ├─main.py └─requirements.txt
設定指令碼
- 啟動 Cloud Shell 工作階段。
- 透過 SSH 連線至 Google Cloud Linux VM。請參閱「使用 Google 工具連線至 Linux VM」。
按一下 「更多」>「上傳」或「下載」,即可上傳擷取指令碼,將檔案或資料夾移至 Cloud Shell 或從 Cloud Shell 移出。
檔案和資料夾只能上傳至主目錄,以及從主目錄下載。 如要瞭解在 Cloud Shell 和本機工作站之間轉移檔案的更多選項,請參閱「[從 Cloud Shell 上傳及下載檔案和資料夾](/shell/docs/uploading-and-downloading-files#upload_and_download_files_and_folders)」。
編輯函式的
.env.yml檔案,並填入必要的環境變數。下表列出所有擷取指令碼通用的執行階段環境變數。變數名稱 說明 必填 預設 密鑰 CHRONICLE_CUSTOMER_IDChronicle (Google SecOps) 客戶 ID。 是 無 否 CHRONICLE_REGIONChronicle (Google SecOps) 區域。 是 us
其他有效值:asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2和southamerica-east1。否 CHRONICLE_SERVICE_ACCOUNTChronicle (Google SecOps) 服務帳戶 JSON 檔案的內容。 是 無 是 CHRONICLE_NAMESPACEChronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 否 無 否 每個指令碼都需要專屬的環境變數。如要瞭解各記錄類型所需的環境變數,請參閱「依記錄類型分類的設定參數」。
標示為 Secret = Yes 的環境變數必須在 Secret Manager 中設定為密鑰。如需使用 Secret Manager 的費用資訊,請參閱 Secret Manager 定價。
如需詳細操作說明,請參閱「建立及存取密鑰」。
在 Secret Manager 中建立密鑰後,請使用密鑰資源名稱做為環境變數的值。例如:projects/{project_id}/secrets/{secret_id}/versions/{version_id},其中 {project_id}、{secret_id} 和 {version_id} 適用於您的環境。
設定排程器或觸發條件
除了 Pub/Sub 以外,所有指令碼都會實作,以便從來源裝置定期收集資料。您必須使用 Cloud Scheduler 設定觸發條件,才能隨時間擷取資料。Pub/Sub 的擷取指令碼會持續監控 Pub/Sub 訂閱項目。詳情請參閱依排程執行服務和使用 Pub/Sub 觸發 Cloud Run 函式。
部署 Cloud Run 函式
- 啟動 Cloud Shell 工作階段。
- 透過 SSH 連線至 Google Cloud Linux VM。請參閱「使用 Google 工具連線至 Linux VM」。
- 切換至您複製擷取指令碼的目錄。
執行下列指令來部署 Cloud Run 函式。
gcloud functions deploy <FUNCTION NAME> --service-account <SERVICE_ACCOUNT_EMAIL> --entry-point main --trigger-http --runtime python39 --env-vars-file .env.yml將
<FUNCTION_NAME>替換為您為 Cloud Run 函式定義的名稱。將
<SERVICE_ACCOUNT_EMAIL>替換為要讓 Cloud Run 函式使用的服務帳戶電子郵件地址。如果沒有將目錄變更為檔案所在位置,請務必使用
--source選項指定部署指令碼的位置。執行 Cloud Run 函式的服務帳戶必須具備「Cloud Functions 叫用者」(
roles/cloudfunctions.invoker) 和「Secret Manager 密碼存取者」(roles/secretmanager.secretAccessor) 角色。
查看執行階段記錄
擷取指令會將執行階段訊息列印至 stdout。Cloud Run functions 提供查看記錄訊息的機制。
依記錄類型劃分的設定參數
Armis Google SecOps 整合
這個指令碼會使用 Armis 平台發出的 API 呼叫,收集不同類型的事件資料,例如快訊、活動、裝置和安全漏洞。收集到的資料會匯入 Google SecOps,並由對應的剖析器剖析。
指令碼流程
指令碼流程如下:
確認環境變數。
將指令碼部署至 Cloud Run functions。
使用擷取指令碼收集資料。
將收集到的資料擷取至 Google SecOps。
透過 Google SecOps 中的對應剖析器剖析收集到的資料。
使用指令碼收集資料並擷取至 Google SecOps
確認環境變數。
變數 說明 必要 預設 密鑰 CHRONICLE_CUSTOMER_IDChronicle (Google SecOps) 客戶 ID。 是 - 否 CHRONICLE_REGIONChronicle (Google SecOps) 區域。 是 美國 是 CHRONICLE_SERVICE_ACCOUNTChronicle (Google SecOps) 服務帳戶 JSON 檔案的內容。 是 - 是 CHRONICLE_NAMESPACEChronicle (Google SecOps) 記錄檔所標示的命名空間。 否 - 否 POLL_INTERVAL函式執行以取得額外資料的頻率間隔 函式執行頻率間隔,以取得額外的記錄資料 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 是 10 否 ARMIS_SERVER_URLArmis 平台的伺服器網址。 是 - 否 ARMIS_API_SECRET_KEY必須提供密鑰才能進行驗證。 是 - 是 HTTPS_PROXYProxy 伺服器網址。 否 - 否 CHRONICLE_DATA_TYPEChronicle (Google SecOps) 資料類型,可將資料推送至 Google SecOps。 是 - 否 設定目錄。
為 Cloud Run 函式部署作業建立新目錄,並在其中新增
common目錄和擷取指令碼的內容 (armis)。設定必要的執行階段環境變數。
在
.env.yml檔案中定義必要環境變數。使用密鑰。
標示為密鑰的環境變數必須在 Secret Manager 中設定為密鑰。 如要進一步瞭解如何建立密鑰,請參閱「建立密鑰」。
在 Secret Manager 中建立密鑰後,請使用密鑰的資源名稱做為環境變數的值。例如:
CHRONICLE_SERVICE_ACCOUNT: projects/{project_id}/secrets/{secret_id}/versions/{version_id}設定命名空間。
設定
CHRONICLE_NAMESPACE環境變數來設定命名空間。Chronicle (Google SecOps) 記錄會擷取至命名空間。部署 Cloud Run 函式。
從先前建立的目錄中執行下列指令,部署 Cloud 函式。
gcloud functions deploy <FUNCTION NAME> --gen2 --entry-point main --trigger-http --runtime python39 --env-vars-file .env.ymlCloud Run 函式的預設規格。
變數 預設 說明 記憶體 256 MB 無 無 Timedout 60 秒 無 無 區域 us-central1 無 無 執行個體數量下限 0 無 無 執行個體數量上限 100 無 無 如要進一步瞭解如何設定這些變數,請參閱「設定 Cloud Run 函式」。
擷取歷來資料。
如要擷取歷來資料並繼續收集即時資料,請按照下列步驟操作:
- 設定
POLL_INTERVAL環境變數,指定要擷取歷來資料的分鐘數。 - 設定 Cloud Run 函式後,您可以使用排程器觸發函式,也可以在 Google Cloud CLI 中執行指令來手動觸發。
- 設定
Aruba Central
這項指令碼會從 Aruba Central 平台擷取稽核記錄,並以 ARUBA_CENTRAL 記錄類型將記錄匯入 Google SecOps。如要瞭解如何使用程式庫,請參閱 pycentral Python SDK。
在 .env.yml 檔案中定義下列環境變數。
| 變數 | 說明 | 預設 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Chronicle (Google SecOps) 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 10 | 否 |
ARUBA_CLIENT_ID |
Aruba Central API 閘道用戶端 ID。 | 無 | 否 |
ARUBA_CLIENT_SECRET_SECRET_PATH |
Aruba Central API 閘道用戶端密鑰。 | 無 | 是 |
ARUBA_USERNAME |
Aruba Central 平台的使用者名稱。 | 無 | 否 |
ARUBA_PASSWORD_SECRET_PATH |
Aruba Central 平台的密碼。 | 無 | 是 |
ARUBA_BASE_URL |
Aruba Central API 閘道的基礎網址。 | 無 | 否 |
ARUBA_CUSTOMER_ID |
Aruba Central 平台的客戶 ID。 | 無 | 否 |
Azure 事件中樞
與其他擷取指令碼不同,這個指令碼會使用 Azure 函式從 Azure 事件中樞擷取事件。每當有新事件新增至 bucket 時,Azure 函式就會觸發自身,並逐步將每個事件擷取至 Google SecOps。
部署 Azure 函式的步驟:
- 從存放區下載名為
Azure_eventhub_API_function_app.json的資料連接器檔案。 - 登入 Microsoft Azure 入口網站。
- 前往 Microsoft Sentinel > 從清單中選取工作區 > 在設定部分選取「資料連接器」,然後執行下列操作:
- 在網址中將下列旗標設為 true:
feature.BringYourOwnConnector=true。例如: https://portal.azure.com/?feature.BringYourOwnConnector=true&... 1. 在頁面上找到「匯入」按鈕,然後匯入您在步驟 1 下載的資料連接器檔案。
- 在網址中將下列旗標設為 true:
- 按一下「Deploy to Azure」(部署至 Azure) 按鈕來部署函式,然後按照同一頁面上的步驟操作。
- 選取偏好的訂閱項目、資源群組和位置,並提供必要值。
- 按一下「Review + Create」。
- 按一下「建立」即可部署。
Box
這項指令碼會取得 Box 內發生的事件詳細資料,並以 BOX 記錄類型將資料擷取至 Google SecOps。這些資料可深入瞭解 Box 環境中物件的 CRUD 作業。如要瞭解 Box 事件,請參閱 Box events API。
在 .env.yml 檔案中定義下列環境變數。如要進一步瞭解 Box 用戶端 ID、用戶端密鑰和主體 ID,請參閱「用戶端憑證授權」。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 5 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
BOX_CLIENT_ID |
Box 平台的用戶端 ID,可在 Box 開發人員控制台中取得。 | 無 | 否 |
BOX_CLIENT_SECRET |
Secret Manager 中密鑰的路徑,該密鑰儲存用於驗證的 Box 平台用戶端密鑰。 | 無 | 是 |
BOX_SUBJECT_ID |
Box 使用者 ID 或企業 ID。 | 無 | 否 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
Citrix Cloud 稽核記錄
這項指令碼會收集 Citrix Cloud 稽核記錄,並以 CITRIX_MONITOR 記錄類型擷取至 Google SecOps。這些記錄檔會提供相關資訊,例如變更內容、變更者和變更時間等,有助於識別 Citrix Cloud 環境中執行的活動。詳情請參閱 Citrix Cloud SystemLog API。
在 .env.yml 檔案中定義下列環境變數。如要瞭解 Citrix 用戶端 ID 和用戶端密鑰,請參閱「開始使用 Citrix API」。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CITRIX_CLIENT_ID |
Citrix API 用戶端 ID。 | 無 | 否 |
CITRIX_CLIENT_SECRET |
Secret Manager 中密鑰的路徑,用於儲存 Citrix API 用戶端密鑰,以進行驗證。 | 無 | 是 |
CITRIX_CUSTOMER_ID |
Citrix CustomerID。 | 無 | 否 |
POLL_INTERVAL |
收集額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 30 | 否 |
URL_DOMAIN |
Citrix Cloud Endpoint。 | 無 | 否 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Chronicle (Google SecOps) 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
Citrix 工作階段中繼資料
這個指令碼會從 Citrix 環境收集 Citrix 工作階段中繼資料,並以 CITRIX_MONITOR 記錄類型擷取至 Google SecOps。資料包括使用者登入詳細資料、工作階段時間長度、工作階段建立時間、工作階段結束時間,以及其他與工作階段相關的中繼資料。詳情請參閱 Citrix Monitor Service API。
在 .env.yml 檔案中定義下列環境變數。如要瞭解 Citrix 用戶端 ID 和用戶端密鑰,請參閱「開始使用 Citrix API」。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
URL_DOMAIN |
Citrix 網址網域。 | 無 | 否 |
CITRIX_CLIENT_ID |
Citrix 用戶端 ID。 | 無 | 否 |
CITRIX_CLIENT_SECRET |
Secret Manager 中密鑰的路徑,用於儲存驗證用的 Citrix 用戶端密鑰。 | 無 | 是 |
CITRIX_CUSTOMER_ID |
Citrix 客戶 ID。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 30 | 否 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
Cloud Storage
這項指令碼會從 Cloud Storage 擷取系統記錄,並以可設定的記錄類型值擷取至 Google SecOps。詳情請參閱 Google Cloud Python 用戶端程式庫。
在 .env.yml 檔案中定義下列環境變數。 Google Cloud
含有安全相關記錄,但部分記錄類型無法直接匯出至 Google SecOps。詳情請參閱「安全記錄分析」。
| 變數 | 說明 | 預設 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 60 | 否 |
GCS_BUCKET_NAME |
要從中擷取資料的 Cloud Storage bucket 名稱。 | 無 | 否 |
GCP_SERVICE_ACCOUNT_SECRET_PATH |
Secret Manager 中儲存 Google Cloud 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CHRONICLE_DATA_TYPE |
要將資料推送至 Chronicle (Google SecOps) 執行個體的記錄類型。 | 無 | 否 |
Duo 活動
這項指令碼會從 Duo 管理介面擷取 Duo 活動記錄,並以 DUO_ACTIVITY 記錄類型將記錄匯入 Google SecOps。詳情請參閱 Duo Admin API。
在 .env.yml 檔案中定義下列環境變數。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west12、me-central1、me-central2、me-west1 和 northamerica-northeast2。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
BACKSTORY_API_V1_URL |
Duo Security API 的網址路徑。如要進一步瞭解如何下載含有 DUO 管理 API 整合金鑰的 JSON 檔案,請參閱 Duo 管理說明文件。 | 無 | 是 |
DUO_SECRET_KEY |
從 DUO API 擷取記錄時必須使用的 DUO 密鑰。如需下載 JSON 檔案的操作說明,請參閱 Duo 管理員說明文件。該檔案包含 Duo 管理員 API 整合金鑰、Duo 管理員 API 密鑰和 Duo 管理員 API 主機名稱。 |
無 | 是 |
DUO_INTEGRATION_KEY |
從 DUO API 擷取記錄所需的 DUO 整合金鑰。如需如何下載含有 Duo 管理 API 整合金鑰、Duo 管理 API 密鑰和 Duo 管理 API 主機名稱的 JSON 檔案,請參閱 Duo 管理說明文件。 |
無 | 是 |
LOG_FETCH_DURATION |
擷取記錄的時間長度。 | 1 | 否 |
CHECKPOINT_FILE_PATH |
儲存上次擷取記錄的檢查點時間戳記的檔案路徑。 | checkpoint.json |
否 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
Duo 管理員
這個指令碼會從 Duo 管理員取得與各種物件 (例如使用者帳戶和安全性) 執行的 CRUD 作業相關的事件。這些事件會以 DUO_ADMIN 記錄類型擷取至 Google SecOps。詳情請參閱 Duo Admin API。
在 .env.yml 檔案中定義下列環境變數。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 無 | 否 |
DUO_API_DETAILS |
Secret Manager 中儲存 Duo 帳戶 JSON 檔案的密鑰路徑。這包含 Duo Admin API 整合金鑰、Duo Admin API 密鑰和 Duo Admin API 主機名稱。例如:
{
"ikey": "abcd123",
"skey": "def345",
"api_host": "abc-123"
}
如需下載 JSON 檔案的操作說明,請參閱 Duo 管理說明文件。 |
無 | 是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
MISP
這項指令碼會從開放原始碼威脅情報與分享平台 MISP 擷取威脅關係資訊,並以 MISP_IOC 記錄類型將資訊匯入 Google SecOps。詳情請參閱 MISP Events API。
在 .env.yml 檔案中定義下列環境變數。
| 變數 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 5 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
ORG_NAME |
用於篩選事件的機構名稱。 | 無 | 否 |
API_KEY |
Secret Manager 中密鑰的路徑,用於儲存驗證時使用的 API 金鑰。 | 無 | 是 |
TARGET_SERVER |
您建立的 MISP 執行個體 IP 位址。 | 無 | 否 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
OneLogin 事件
這個指令碼會從 OneLogin 環境取得事件,並以 ONELOGIN_SSO 記錄類型將事件擷取至 Google SecOps。這類事件會提供使用者帳戶作業等資訊。詳情請參閱 OneLogin Events API。
在 .env.yml 檔案中定義下列環境變數。如要瞭解 OneLogin 用戶端 ID 和用戶端密鑰,請參閱「使用 API 憑證」。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 5 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CLIENT_ID |
OneLogin 平台的用戶端 ID。 | 無 | 否 |
CLIENT_SECRET |
Secret Manager 中密鑰的路徑,用於儲存 OneLogin 平台用於驗證的用戶端密鑰。 | 無 | 是 |
TOKEN_ENDPOINT |
要求存取權杖的網址。 | https://api.us.onelogin.com/auth/oauth2/v2/token |
否 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
OneLogin 使用者情境
這個指令碼會從 OneLogin 環境取得與使用者帳戶相關的資料,並以 ONELOGIN_USER_CONTEXT 記錄類型將資料匯入 Google SecOps。詳情請參閱 OneLogin User API。
在 .env.yml 檔案中定義下列環境變數。如要瞭解 OneLogin 用戶端 ID 和用戶端密鑰,請參閱「使用 API 憑證」。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 30 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CLIENT_ID |
OneLogin 平台的用戶端 ID。 | 無 | 否 |
CLIENT_SECRET |
Secret Manager 中密鑰的路徑,用於儲存 OneLogin 平台用於驗證的用戶端密鑰。 | 無 | 是 |
TOKEN_ENDPOINT |
要求存取權杖的網址。 | https://api.us.onelogin.com/auth/oauth2/v2/token |
否 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
Proofpoint
這項指令碼會擷取特定機構在指定時間範圍內,遭到攻擊的使用者相關資料,並將資料匯入 Google SecOps。如要瞭解使用的 API,請參閱 People API。
在 .env.yml 檔案中定義下列環境變數。如要進一步瞭解如何取得 Proofpoint 服務主體和 Proofpoint 密鑰,請參閱「Providing proofpoint TAP credentials to Arctic Wolf configuration guide」。
| 變數 | 說明 | 預設 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 360 | 否 |
CHRONICLE_DATA_TYPE |
要將資料推送至 Chronicle (Google SecOps) 執行個體的記錄類型。 | 無 | 否 |
PROOFPOINT_SERVER_URL |
Proofpoint Server API 閘道的基本網址。 | 無 | 否 |
PROOFPOINT_SERVICE_PRINCIPLE |
Proofpoint 平台的使用者名稱。這通常是服務主體。 | 無 | 否 |
PROOFPOINT_SECRET |
Secret Manager 的路徑和版本,其中儲存 Proofpoint 平台的密碼。 | 無 | 是 |
PROOFPOINT_RETRIEVAL_RANGE |
指出應從多少天前開始擷取資料的數字。可接受的值為 14、30 和 90。 | 無 | 否 |
Pub/Sub
這個指令碼會從 Pub/Sub 訂閱項目收集訊息,並將資料擷取至 Google SecOps。這項服務會持續監控訂閱閘道,並在出現新訊息時擷取這些訊息。詳情請參閱下列文件:
這項擷取指令碼需要您在 .env.yml 檔案和 Cloud Scheduler 工作中設定變數。
在
.env.yml檔案中定義下列環境變數。變數名稱 說明 預設值 密鑰 CHRONICLE_CUSTOMER_IDChronicle (Google SecOps) 執行個體客戶 ID。 無 否 CHRONICLE_REGIONChronicle (Google SecOps) 執行個體區域。 us
其他有效值:asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2和southamerica-east1。否 CHRONICLE_SERVICE_ACCOUNTSecret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 無 是 CHRONICLE_NAMESPACEChronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 無 否 在 Cloud Scheduler 的「Message body」(訊息內文) 欄位中,將下列變數設為 JSON 格式的字串。如要進一步瞭解「訊息內文」欄位,請參閱建立 Cloud Scheduler。
變數名稱 說明 預設值 密鑰 PROJECT_IDPub/Sub 專案 ID。如要瞭解專案 ID,請參閱「建立及管理專案」。 無 否 SUBSCRIPTION_IDPub/Sub 訂閱項目 ID。 無 否 CHRONICLE_DATA_TYPE將資料推送至 Chronicle (Google SecOps) 時提供的記錄類型擷取標籤。如需支援的記錄檔類型清單,請參閱「 支援的預設剖析器」。 無 否 以下是 Message body 欄位的 JSON 格式字串範例。
{ "PROJECT_ID":"projectid-0000","SUBSCRIPTION_ID":"subscription-id","CHRONICLE_DATA_TYPE":"SQUID_PROXY"}
Slack 稽核記錄
這個指令碼會從 Slack Enterprise Grid 機構取得稽核記錄,並以 SLACK_AUDIT 記錄類型將這些記錄擷取至 Google SecOps。詳情請參閱 Slack 稽核記錄 API。
在 .env.yml 檔案中定義下列環境變數。
| 變數名稱 | 說明 | 預設值 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 5 | 否 |
SLACK_ADMIN_TOKEN |
Secret Manager 中儲存 Slack 驗證權杖的密鑰路徑。 |
無 |
是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
STIX/TAXII
這項指令碼會從 STIX/TAXII 伺服器提取指標,並將其擷取至 Google SecOps。詳情請參閱 STIX/TAXII API 說明文件。在 .env.yml 檔案中定義下列環境變數。
| 變數名稱 | 說明 | 預設 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
POLL_INTERVAL |
函式執行的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作相同。 | 60 | 否 |
TAXII_VERSION |
要使用的 STIX/TAXII 版本。可用的選項包括 1.1、2.0、2.1 | 無 | 否 |
TAXII_DISCOVERY_URL |
TAXII 伺服器的探索網址。 | 無 | 否 |
TAXII_COLLECTION_NAMES |
要從中擷取資料的集合 (CSV)。如要從所有集合擷取資料,請將這個欄位留空。 | 無 | 否 |
TAXII_USERNAME |
驗證所需的使用者名稱 (如有)。 | 無 | 否 |
TAXII_PASSWORD_SECRET_PATH |
驗證所需的密碼 (如有)。 | 無 | 是 |
Tenable.io
這項指令碼會從 Tenable.io 平台擷取資產和安全漏洞資料,並以 TENABLE_IO 記錄類型將資料匯入 Google SecOps。如要瞭解使用的程式庫,請參閱 pyTenable Python SDK。
在 .env.yml 檔案中定義下列環境變數。如要進一步瞭解資產和安全漏洞資料,請參閱 Tenable.io API:匯出資產和匯出安全漏洞。
| 變數 | 說明 | 預設 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 360 | 否 |
TENABLE_ACCESS_KEY |
用於驗證的存取金鑰。 | 無 | 否 |
TENABLE_SECRET_KEY_PATH |
Google Secret Manager 的路徑 (含版本),其中儲存 Tenable 伺服器的密碼。 | 無 | 是 |
TENABLE_DATA_TYPE |
要在 Google SecOps 中擷取的資料類型。可能的值:ASSETS、VULNERABILITIES。 | 資產、安全漏洞 | 否 |
TENABLE_VULNERABILITY |
您希望匯出內容包含的安全性弱點狀態。可能的值:`OPEN`、`REOPENED` 和 `FIXED`。 | 未解決、已恢復營業 | 否 |
Trend Micro Cloud App Security
這項指令碼會從 Trend Micro 平台擷取安全性記錄,並將其匯入 Google SecOps。如要瞭解使用的 API,請參閱安全性記錄 API。
在 .env.yml 檔案中定義下列環境變數。
| 變數 | 說明 | 預設 | 密鑰 |
|---|---|---|---|
CHRONICLE_CUSTOMER_ID |
Chronicle (Google SecOps) 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 10 | 否 |
CHRONICLE_DATA_TYPE |
要將資料推送至 Chronicle (Google SecOps) 執行個體的記錄類型。 | 無 | 否 |
TREND_MICRO_AUTHENTICATION_TOKEN |
Google Secret Manager 的路徑 (含版本),用於儲存 Trend Micro Server 的驗證權杖。 | 無 | 是 |
TREND_MICRO_SERVICE_URL |
Cloud App Security 服務的服務網址。 | 無 | 否 |
TREND_MICRO_SERVICE |
要擷取記錄的受保護服務名稱。支援逗號分隔值。可能的值:exchange、sharepoint、onedrive、dropbox、box、googledrive、gmail、teams、exchangeserver、salesforce_sandbox、salesforce_production、teams_chat。 | exchange、sharepoint、onedrive、dropbox、box、googledrive、gmail、teams、exchangeserver、salesforce_sandbox、salesforce_production、teams_chat | 否 |
TREND_MICRO_EVENT |
要擷取記錄的安全事件類型。支援逗號分隔值。可能的值:securityrisk、virtualanalyzer、ransomware、dlp。 | securityrisk、virtualanalyzer、ransomware、dlp | 否 |
Trend Micro Vision One
這個指令碼會擷取 Trend Micro Vision One 的稽核記錄,並以 TREND_MICRO_VISION_AUDIT 記錄類型將記錄匯入 Google SecOps。如要瞭解所用的 API,請參閱 Audit Logs API。在 .env.yml 檔案中定義下列環境變數。
| 變數 | 說明 | 預設 | 密鑰 |
|---|---|---|---|
TREND_MICRO_VISION_AUDIT |
Google SecOps 執行個體客戶 ID。 | 無 | 否 |
CHRONICLE_REGION |
Chronicle (Google SecOps) 執行個體區域。 | us其他有效值: asia-northeast1、asia-south1、asia-southeast1、australia-southeast1、europe、europe-west2、europe-west3、europe-west6、europe-west9、europe-west12、me-central1、me-central2、me-west1、northamerica-northeast2 和 southamerica-east1。 |
否 |
CHRONICLE_SERVICE_ACCOUNT |
Secret Manager 中儲存 Chronicle (Google SecOps) 服務帳戶 JSON 檔案的密鑰路徑。 | 無 | 是 |
CHRONICLE_NAMESPACE |
Chronicle (Google SecOps) 記錄檔標示的命名空間。如要瞭解 Google SecOps 命名空間,請參閱「使用資產命名空間」。 | 無 | 否 |
POLL_INTERVAL |
函式執行以取得額外記錄資料的頻率間隔 (以分鐘為單位)。這個時間長度必須與 Cloud Scheduler 工作間隔相同。 | 10 | 否 |
TREND_MICRO_AUTHENTICATION_TOKEN |
Google Secret Manager 的路徑 (含版本),用於儲存 Trend Micro Server 的驗證權杖。 | 無 | 是 |
TREND_MICRO_DOMAIN |
服務端點所在的 Trend Micro Vision One 區域。 | 無 | 否 |
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。