管理應對手冊流程
支援的國家/地區:
本文說明 Flow 元件如何使用分支系統做出決策,引導劇本的後續步驟。
條件流程可讓應對手冊根據收到的快訊資料、先前動作的結果或使用者輸入內容,決定要將案件導向不同路徑,因此非常重要。
可用的流程選項如下:
- 條件:根據預留位置、現有案件資料和「先前的動作」流程設定複雜條件。
- 選擇題:分析師必須手動回答的問題。
新增條件流程
本節說明如何使用條件流程,在劇本中建立動態分支邏輯。
新增單一條件流程
如要新增單一條件流程,請按照下列步驟操作:
- 在「Response」>「Playbooks」頁面,按一下「Open Step Selection」。
- 在「Step Selection」中,選取「Flow」部分。
- 視應對手冊的建構方式而定,將條件拖曳至步驟或兩個動作之間。
- 按兩下條件,開啟對話方塊。
- 選取必要實體。如果您使用預留位置,這些預留位置的範圍會限定在這個實體群組。
- 決定要建立多少分支。每個分支之間都有 OR。
- 請按照下列步驟,為各分支選取並新增參數:
- 從現有預留位置清單中,選取要評估的相關預留位置。如果是新使用者,如果尚未擷取任何快訊,這個欄位會是空白。
- 選取所需運算子 (例如「等於」、「不包含」)
- 選擇值。
- 定義「備用分支」,避免條件失敗。如果條件是根據先前的動作,且其中一個動作失敗 (並略過),條件會繼續執行備援分支,而不是停止。如要選取備用分支版本,請參閱「定義備用分支版本」。
- 按一下 [儲存]。Playbook 會建立您定義的分支版本 (最多 19 個),以及 Else 分支版本 (標示為 E)。
- 為 (至少) 一個分支設定結果,將劇本標示為完成。
新增選擇題流程
- 將 MultiChoiceQuestion 流程拖曳至所需的 Playbook 步驟。
- 按兩下該方塊即可開啟側邊抽屜。
- 在「參數」分頁中,新增問題並視需要新增多個答案。
- 如要設定分析師回覆的逾時時間:
- 按一下側邊抽屜中的「設定」分頁標籤。
- 將「回應時間」選項切換為
ON。 - 以天、小時和分鐘為單位指定適當的持續時間。
- 在「If Time to Respond exceeded」(如果超過回應時間) 部分下方,選取下列其中一項動作:
- 停止應對手冊:如果使用者未在指定時間內回覆,應對手冊就會停止執行。
- 選取現有分支:從選單中選取已定義的答案分支。如果超過回覆時間,應對手冊會遵循這個所選分支。
- 建立新分支:這個選項會在應對手冊設計工具中產生專屬分支,用於處理逾時問題。這項功能可讓您定義特定動作 (例如傳送電子郵件給管理員),與流程的標準答案選項不同。這個新分支會顯示在教戰手冊設計工具中,並標示為「Time to respond exceeded」(超過回覆時間)。
- 選用:核准連結:如果使用這個 MultiChoiceQuestion 從電子郵件等外部來源收集核准,請將「核准連結」切換為
ON。如要進一步瞭解如何設定及使用核准連結,請參閱「在動作中指派核准連結」。 - 按一下 [儲存]。Playbook 會為每個提供的答案開啟一個分支 (最多 20 個),如果設定了「回應時間超過上限」,則會額外開啟一個分支。
- 請為至少一個答案分支版本設定結果,將其標示為完成。
新增條件流程
如要新增條件流程,請按照下列步驟操作:
- 將「條件」拖曳至「最後步驟」方塊。
- 按一下「條件」開啟對話方塊。
- 決定要建立多少個分支。每個分支之間都有「OR」。
- 新增參數:選取必要參數。清單只會顯示這項劇本的動作指令碼結果。
- 選取所需運算子:「等於/不等於」、「包含/不包含」、「開頭為」或「大於/小於」。
- 選擇值 (動作結果)。
- 您可以為每個分支新增更多參數,並選擇邏輯運算子:「AND」或「OR」。
- 按一下 [儲存]。劇本會開啟您定義的分支 (最多 19 個) 和「Else」分支。
- 至少為一個分支設定結果,才能完成。
定義備用分支
- 在其中一個流程 (條件) 中,選取要用做備用分支的分支。本範例使用「Branch – not risky」(分支版本 - 無風險)。您不一定要新增備用分支。
- 應對手冊執行時,如果先前的動作失敗,應對手冊會選擇備用分支版本並繼續執行。
管理步驟失敗
執行應對手冊步驟時可能會失敗。根據預設,如果某個步驟失敗,劇本就會停止執行,這是重要的安全機制,可防止系統繼續使用不完整或不正確的資料。不過,有時即使步驟未傳回預期結果,您仍希望劇本繼續執行。對於擴充動作而言,這點尤其重要,因為您要尋找的資料可能並非每個案件都有。你可以決定要停止應對手冊,還是跳到下一個步驟。如果失敗的步驟對決策至關重要,您可以在下一個步驟中檢查上一個步驟是否失敗,並據此決定如何繼續 (例如,如果某個步驟失敗,請前往備援分支)。
失敗時略過
您可以設定在任何動作失敗時略過該步驟。啟用這項設定後,即使動作無法執行或傳回錯誤,playbook 仍會繼續執行下一個步驟。
如要啟用這項設定,請按照下列步驟操作:
- 按兩下動作方塊,開啟設定面板。
- 在「設定」分頁中,前往「如果步驟失敗」部分。
- 選取「略過這個步驟」。
使用條件進行進階錯誤處理
「失敗時略過」選項適用於基本情況,但更穩健的方法是使用條件流程建立專屬的錯誤處理路徑。這樣一來,當步驟失敗時,應對手冊就能採取不同的動作,例如通知分析人員或記錄錯誤。
如要建立錯誤處理路徑,請按照下列步驟操作:
- 在可能失敗的動作之後,新增「條件」流程區塊,定義特定失敗路徑。
- 按兩下「Condition」方塊,開啟對話方塊。
- 前往「設定」分頁,然後在「如果先前的動作失敗」部分,選取要將流程導向哪個分支。重要事項:「如果先前的動作失敗」條件並非只是檢查是否有任何先前的失敗動作,而是檢查先前動作 (其結果用於評估目前條件) 是否失敗。如果該項依附動作失敗,系統就無法判斷條件,並將流程導向所選分支。這樣一來,您就能處理依附元件失敗的情況,避免條件無法解析。
- 在這個失敗分支中,您可以新增傳送通知電子郵件、建立工作或記錄失敗等動作。
舉例來說,假設某個劇本嘗試解決使用者的擁有者問題。如果「Resolve User Owner」動作失敗 (例如 Active Directory 中沒有該使用者),劇本不會停止。條件區塊會偵測到失敗,並將流程導向另一個分支,向安全團隊傳送有關資料遺失的電子郵件,確保應對手冊繼續執行,不會中斷。<
移除流程
從應對手冊中移除流程時,系統會提示您移除整個分支,或只移除其中一個方面。
合併分支
您可以將劇本的不同分支合併為一個分支。方法是將動作從其中一個分支拖曳到另一個分支的「Final Step」(最後步驟) 方塊。應對手冊可以在此之後繼續執行,也可以在此結束。
邏輯運算子在條件中的運作方式
本節說明教戰手冊中的條件運算子如何評估包含單一或多個項目的欄位 (例如警告中的實體或事件)。瞭解欄位是字串還是清單,對應對手冊邏輯至關重要。
資料類型在條件評估中的角色
運算子行為 (Equals、Contains) 會因資料類型而異:
- 單一項目內容:來自單一實體警報的
[Entity.Identifier]等欄位會視為單一字串。 - 多個項目內容:如果警報有多個實體,則警報中的相同欄位會是字串清單。
equals 和 contains 的運算子行為
以下各節將說明這些運算子的運作方式。
Equals 運算子
Equals 運算子會直接比較兩個值。
- 單一項目欄位 (字串) 會檢查是否完全相符。
- 假設
[Entity.Identifier]為"Tom"。 - 則條件
if [Entity.Identifier] equals "Tom"為True。
- 假設
- 多個項目欄位 (清單) 會檢查整個清單是否等於指定的字串。清單「絕不」等於單一字串。
- 假設
[Entity.Identifier]是清單(Tom, Kai) - 因此條件
if [Entity.Identifier] equals "Tom, Kai"一律為 False。這是因為[Entity.Identifier]是清單,「Tom, Kai」則是字串。
- 假設
Contains 運算子
Contains 運算子也會因資料類型而異:
- 單一項目欄位 (字串) 會執行子字串搜尋。如果字串包含該值,則傳回
True。- 假設
[Entity.Identifier]為"user-1234"。 - 則條件
if [Entity.Identifier] contains "user"為真。
- 假設
- 多項目欄位 (清單) 會檢查清單中的項目是否完全比對。不會執行子字串搜尋。
- 假設
[Entity.Identifier]是清單 ("UserA@corp.com", "UserB@corp.com")。 - 然後條件為
if [Entity.Identifier] contains "corp"「False」。
- 假設
還有其他問題嗎?向社群成員和 Google SecOps 專家尋求解答。