Cloudflare
本文說明如何將 Cloudflare 與 Google Security Operations 整合。
產品用途
執行實體擴充
在 Google Security Operations 設定 Cloudflare 整合
如要瞭解如何在 Google SecOps 中設定整合功能,請參閱「設定整合功能」一文。
整合參數
請使用下列參數設定整合:
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| API 根層級 | 字串 | https://api.cloudflare.com |
是 | Cloudflare 執行個體的 API 根目錄。 |
| API 權杖 | 密碼 | 不適用 | 是 | Cloudflare 執行個體的 API 權杖。 |
| 帳戶名稱 | 字串 | 不適用 | 是 | 整合中必須使用的帳戶名稱。 |
| 驗證 SSL | 核取方塊 | 已勾選 | 否 | 如果啟用,系統會驗證 Cloudflare 伺服器連線的 SSL 憑證是否有效。 |
如何設定權杖
- 前往「Profile Settings」,然後點選「API Tokens」。
- 依序前往「Create Token」 > 「Create Custom Token」,然後選取下列 權限:
| 帳戶 | 帳戶 WAF | 讀取 |
| 帳戶 | 規則政策 | 讀取 |
| 帳戶 | 帳戶篩選器清單 | 編輯 |
| 帳戶 | 帳戶防火牆存取權 | 編輯 |
| 帳戶 | DNS 防火牆 | 讀取 |
| 帳戶 | 帳戶設定 | 讀取 |
| 可用區 | 區域 WAF | 編輯 |
| 可用區 | 區域設定 | 讀取 |
| 可用區 | 可用區 | 讀取 |
| 可用區 | 記錄 | 讀取 |
| 可用區 | 防火牆服務 | 編輯 |
| 可用區 | 防火牆服務 | 讀取 |
| 可用區 | 數據分析 | 讀取 |

動作
將 IP 新增至規則清單
說明
將 IP 位址新增至 Cloudflare 的規則清單。支援的實體:IP 位址。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 規則名稱 | 字串 | 不適用 | 是 | 指定要新增規則清單項目的規則清單名稱。 |
| 說明 | 字串 | 不適用 | 否 | 為新加入的規則清單項目指定說明。 |
執行日期
這項動作會對 IP 位址實體執行。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
"result": {
"operation_id": "f16b978552ca49f88b36fe628de31142"
},
"success": true,
"errors": [],
"messages": []
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊: 如果一個實體回報 200 狀態碼 (is_success=true):「已成功將下列實體新增至 Cloudflare 的『{name}』規則清單:{entity.identifier}。」 如果無法對某個實體執行動作 (is_success=true):「動作無法將下列實體新增至 Cloudflare 的『{name}』規則清單:{entity.identifier}。」 如果所有實體都未成功新增 (is_success=false):「提供的實體都未新增至『{name}』規則清單。」 動作應失敗並停止執行應對手冊: 如果系統回報嚴重錯誤,例如憑證錯誤、無法連線至伺服器等:「執行『將 IP 新增至規則清單』動作時發生錯誤。原因:{0}''.format(error.Stacktrace) 如果找不到清單:「Error executing action "Add IP To Rule List". 原因:在 Cloudflare 找不到規則清單「{name}」。 如果清單類型無效:「Error executing action "Add IP To Rule List". 原因:規則清單「{name}」並非「IP」類型。 |
一般 |
將網址新增至規則清單
說明
在 Cloudflare 的規則清單中新增網址。支援的實體:網址。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 規則名稱 | 字串 | 不適用 | 是 | 指定要新增規則清單項目的規則清單名稱。 |
| 來源網址 | 字串 | 不適用 | 是 | 指定規則清單項目的來源網址。 |
| 說明 | 字串 | 不適用 | 否 | 為新加入的規則清單項目指定說明。 |
| 狀態碼 | DDL | 301 可能的值:
|
否 | 指定規則清單項目的狀態。 |
| 保留查詢字串 | 核取方塊 | 已取消勾選 | 否 | 如果啟用,規則清單項目會保留查詢字串。 |
| 包含子網域 | 核取方塊 | 已取消勾選 | 否 | 啟用後,規則清單項目會包含子網域。 |
| 子路徑比對 | 核取方塊 | 已取消勾選 | 否 | 如果啟用,規則清單項目會與子路徑相符。 |
| 保留路徑後置字串 | 核取方塊 | 已取消勾選 | 否 | 如果啟用,規則清單項目會保留路徑後置字串。 |
執行日期
這項動作會對 IP 位址實體執行。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
"result": {
"operation_id": "f16b978552ca49f88b36fe628de31142"
},
"success": true,
"errors": [],
"messages": []
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊: 如果一個實體的狀態碼為 200 (is_success=true):「已成功將下列實體新增至 Cloudflare 的『{name}』規則清單:{entity.identifier}。」 如果無法對某個實體執行動作 (is_success=true):「動作無法將下列實體新增至 Cloudflare 的『{name}』規則清單:{entity.identifier}。」 如果所有實體都未成功 (is_success=false):「提供的實體都未新增至『{name}』規則清單。」 動作應失敗並停止執行應對手冊: 如果系統回報嚴重錯誤,例如憑證錯誤、無法連線至伺服器或其他錯誤:「執行『將網址新增至規則清單』動作時發生錯誤。原因:{0}''.format(error.Stacktrace) 如果找不到清單:「執行『將網址新增至規則清單』動作時發生錯誤。原因:在 Cloudflare 找不到規則清單「{name}」。 如果清單類型無效:「執行『將網址新增至規則清單』動作時發生錯誤。原因:規則清單「{name}」並非「重新導向」類型。 |
一般 |
建立防火牆規則
說明
在 Cloudflare 建立防火牆規則。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 區域名稱 | 字串 | 不適用 | 是 | 指定防火牆規則所在的可用區名稱。 |
| 名稱 | 字串 | 不適用 | 否 | 指定防火牆規則的名稱。 |
| 動作 | DDL | 封鎖 可能的值:
|
否 | 指定防火牆規則的動作。 如果選取「封鎖」,則必須在「產品」參數中提供值。 |
| 運算式 | 字串 | 不適用 | 是 | 指定防火牆規則的運算式。 |
| 產品 | CSV | 不適用 | 否 | 請指定防火牆規則的產品清單,並以半形逗號分隔。 注意:只有在「Action」參數選取「Bypass」時,才必須提供這項參數。 可能的值:zoneLockdown、uaBlock、bic、hot、securityLevel、rateLimit、waf |
| 優先順序 | 整數 | 不適用 | 否 | 指定防火牆規則的優先順序。 |
| 參考標記 | 字串 | 不適用 | 否 | 指定防火牆規則的參照標記。 注意:長度上限為 50 個半形字元。 |
執行日期
這項動作不會對實體執行。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
{
"id": "b520c154bdeb4fe2a1f647b2c6b35829",
"paused": false,
"description": "Blocks traffic identified during investigation for MIR-31",
"action": "block",
"priority": 50,
"filter": {
"id": "fc6dfad848c24a42ae5be0114db09fb9",
"expression": "(ip.geoip.continent eq \"ASIA\")",
"paused": false
},
"created_on": "2022-07-25T11:19:22Z",
"modified_on": "2022-07-25T11:19:22Z",
"index": 0
}
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊: 如果回報 200 狀態碼 (is_success=true):「已成功在 Cloudflare 的『{zone_name}』區域建立新的防火牆規則。」 動作應失敗並停止執行應對手冊: 如果系統回報嚴重錯誤,例如憑證錯誤、無法連線至伺服器等:「執行『建立防火牆規則』動作時發生錯誤。原因:{0}''.format(error.Stacktrace) 如果錯誤清單並非空白:「Error executing action "Create Firewall Rule". Reason: {0}''.format(errors/message) 如果找不到可用區:「Error executing action "Create Firewall Rule". 原因:在 Cloudflare 中找不到可用區「{zone_name}」。 |
一般 |
建立規則清單
說明
在 Cloudflare 建立規則清單。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 名稱 | 字串 | 不適用 | 是 | 指定規則清單名稱。 |
| 類型 | DDL | IP 位址 可能的值:
|
否 | 指定規則清單的類型。 |
| 說明 | 字串 | 不適用 | 否 | 指定規則清單的說明。 |
執行日期
這項動作不會對實體執行。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
"id": "d19589d629f140c0b961c467feadf99d",
"name": "123",
"kind": "ip",
"num_items": 0,
"description": "description",
"num_referencing_filters": 0,
"created_on": "2022-07-25T12:13:46Z",
"modified_on": "2022-07-25T12:13:46Z"
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊: 如果回報 200 狀態碼 (is_success = true):「已成功在 Cloudflare 建立規則清單。」 動作應失敗並停止執行應對手冊: 如果系統回報嚴重錯誤,例如憑證錯誤、無法連線至伺服器等:「執行『建立規則清單』動作時發生錯誤。原因:{0}''.format(error.Stacktrace) 如果錯誤清單不為空白:「執行『建立規則清單』動作時發生錯誤。Reason: {0}''.format(errors/message) |
一般 |
列出防火牆規則
說明
列出 Cloudflare 中可用的防火牆規則。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 區域名稱 | 字串 | 不適用 | 是 | 指定區域名稱,該區域將包含防火牆規則。 |
| 篩選鍵 | DDL | 請選取一項 可能的值:
|
否 | 指定要用來篩選{項目類型}的鍵。 |
| 篩選邏輯 | DDL | 請選取一項 可能的值:
|
否 | 指定要套用的篩選邏輯。 篩選邏輯會根據「篩選鍵」參數中提供的值。 |
| 篩選器值 | 字串 | 不適用 | 否 | 指定篩選條件應使用的值。 如果選取「等於」,動作會嘗試在結果中尋找完全比對的項目。 如果選取「包含」,動作會嘗試找出包含該子字串的結果。 如果未提供這個參數,就不會套用篩選器。 篩選邏輯取決於「篩選鍵」參數中提供的值。 |
| 要傳回的記錄數量上限 | 整數 | 50 | 否 | 指定要傳回的記錄數量。 如未提供,動作會傳回 50 筆記錄。 |
執行日期
這項動作不會對實體執行。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
"id": "55ec8db30f9e4640b5d0d13cff6b5429",
"paused": false,
"description": "rulle2",
"action": "allow",
"filter": {
"id": "2bb05df8c4f547bd9792d8dc38a86b81",
"expression": "(ip.geoip.country eq \"BG\")",
"paused": false
},
"created_on": "2022-07-05T13:53:39Z",
"modified_on": "2022-07-05T13:53:39Z"
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊: 如果資料可用 (is_success=true):「已成功在『{product name}』中找到符合指定條件的『{item name}』」。 如果沒有資料 (is_success=false):「在『{product name}』中,找不到符合指定條件的『{item name}』」 如果「篩選條件值」參數空白 (is_success=true): 「篩選器未套用,因為『篩選器值』參數的值空白。」 動作應失敗並停止執行應對手冊: 如果「篩選器鍵」參數設為「選取一項」,且「篩選器邏輯」參數設為「等於」或「包含」: 「執行動作『{action name}』時發生錯誤。原因:您必須從「篩選器索引鍵」參數中選取欄位。 如果「Max Records to Return」參數的值無效:「Error executing action "{action name}". 原因:「傳回的記錄數量上限」的值無效:。請提供正數。 如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器,系統會回報其他錯誤:「執行動作「{action name}」時發生錯誤。原因:{0}''.format(error.Stacktrace) |
一般 |
| 案件總覽表格 | 資料表名稱:可用的{商品群組} 資料表資料欄:{fields} |
一般 |
乒乓
說明
在 Google SecOps Content Hub 整合設定頁面,使用提供的參數測試與 Cloudflare 的連線能力。
參數
不適用
執行日期
這項動作不會使用任何 Google SecOps 範圍實體,也沒有必要輸入參數。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
N/A
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊: 如果成功:「已使用提供的連線參數成功連線至 SpyCloud 伺服器!」 動作應失敗並停止執行應對手冊: 如果未成功:「無法連線至 SpyCloud 伺服器!錯誤為 {0}".format(exception.stacktrace) 如果找不到帳戶,系統會顯示「無法連線至 Cloudflare 伺服器!提供的帳戶名稱無效。請檢查拼字。」 |
一般 |
更新防火牆規則
說明
在 Cloudflare 更新防火牆規則。
執行日期
這項動作不會對實體執行。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 規則名稱 | 字串 | 不適用 | 是 | 指定要更新的規則名稱。 |
| 區域名稱 | 字串 | 不適用 | 是 | 指定防火牆規則所在的可用區名稱。 |
| 動作 | DDL | 封鎖 可能的值:
|
否 | 指定防火牆規則的動作。 如果選取「封鎖」,則必須在「產品」參數中提供值。 |
| 運算式 | 字串 | 不適用 | 是 | 指定防火牆規則的運算式。 |
| 產品 | CSV | 不適用 | 否 | 請指定防火牆規則的產品清單,並以半形逗號分隔。 注意:只有在「Action」參數選取「Bypass」時,才必須提供這項參數。 可能的值:zoneLockdown、uaBlock、bic、hot、securityLevel、rateLimit、waf |
| 優先順序 | 整數 | 不適用 | 否 | 指定防火牆規則的優先順序。 |
| 參考標記 | 字串 | 不適用 | 否 | 指定防火牆規則的參照標記。 注意:長度上限為 50 個半形字元。 |
執行日期
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
{
"id": "b520c154bdeb4fe2a1f647b2c6b35829",
"paused": false,
"description": "Blocks traffic identified during investigation for MIR-31",
"action": "block",
"priority": 50,
"filter": {
"id": "fc6dfad848c24a42ae5be0114db09fb9",
"expression": "(ip.geoip.continent eq \"ASIA\")",
"paused": false
},
"created_on": "2022-07-25T11:19:22Z",
"modified_on": "2022-07-25T11:19:22Z",
"index": 0
}
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊: 如果回報 200 狀態碼 (is_success=true):「已成功更新 Cloudflare 中『{zone_name}』區域的防火牆規則。」 動作應失敗並停止執行應對手冊: 如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器,系統會回報其他錯誤:「執行『更新防火牆規則』動作時發生錯誤。原因:{0}''.format(error.Stacktrace) 如果錯誤清單不為空白:「Error executing action "Update Firewall Rule". Reason: {0}''.format(errors/message) 如果找不到可用區:「Error executing action "Update Firewall Rule". 原因:在 Cloudflare 中找不到可用區「{zone_name}」。 |
一般 |
還有其他問題嗎?向社群成員和 Google SecOps 專家尋求解答。