使用應對手冊迴圈自動執行工作
「劇本迴圈」功能著重於 for-each 迴圈,可疊代清單並針對每個項目執行一組動作。
透過 Playbook 迴圈,您可以多次執行單一或一系列動作,有效處理多個項目,例如實體。這樣一來,您就不必在需要對多個實體或其他資料類型執行重複步驟時,自訂動作或手動複製動作。您也可以將方塊放在迴圈內,或在方塊內嵌入迴圈,藉此簡化工作流程。
支援的迴圈類型
劇本迴圈支援對下列資料類型進行疊代:
- 實體:您可以疊代處理快訊中的實體清單。
- 清單:您可以疊代使用者定義的項目清單,或使用預留位置動態解析清單。
規劃迴圈結構
應對手冊迴圈包含「迴圈開始」步驟和對應的「迴圈結束」步驟。您要針對清單中的每個項目重複執行的動作,會放在這兩個步驟之間。
循環開始
「迴圈開始」步驟會標示迴圈的開頭,並包含迴圈的設定。
- 您可以在「迴圈開始」步驟中為迴圈指派名稱。這個名稱會顯示在「迴圈開始」和「迴圈結束」步驟中。
- 這個步驟會定義「Loop Over」參數 (「Entities」或「List」),並為所選類型設定特定設定。
- 這個步驟可讓您設定迴圈達到疊代次數上限 (目前為 100 次) 或發生問題時的行為。
- 迴圈成功啟動後,畫面上會顯示勾號。
循環結束
「迴圈結尾」步驟會標示迴圈的終點。
- 您無法直接編輯「迴圈結束」步驟,因為這項步驟的設定與「迴圈開始」步驟相關聯。
- 迴圈成功完成所有疊代後,「迴圈結束」步驟會傳回成功狀態 (以勾號表示),且 JSON 結果會包含執行的疊代次數。
- 如果迴圈在處理所有項目之前停止 (因為達到疊代次數上限),JSON 結果會包含略過的項目清單。
在迴圈中定義動作
「迴圈開始」和「迴圈結束」步驟之間放置的動作會重複執行。您可以將任何標準劇本動作拖曳至這個區域,包括條件動作和區塊。
疊代實體的迴圈
根據預設,當迴圈疊代實體時,迴圈內的動作只會套用至每次疊代的目前實體。迴圈進行時,動作會一次處理一個實體。
如果是對實體執行的動作 (例如「VirusTotal - Enrich Hash」),系統會自動將動作範圍限定在迴圈內的目前實體。迴圈中使用的實體預留位置也只會參照目前的迴圈實體。
為說明這點,請參考以下用途:掃描雜湊並為惡意雜湊建立工單。
疊代實體的進階迴圈
在某些用途中,您可能需要存取目前疊代實體和其他快訊實體的資訊。如要達成這個目標,請針對該特定迴圈動作,將「將範圍鎖定至疊代」切換鈕設為關閉。
- 開啟切換鈕後,實體資料和預留位置只會限制為目前透過迴圈處理的實體。
- 如果關閉切換鈕,實體資料和預留位置就能根據「實體」選單中的設定,存取所有警告實體。
- 使用
Entity
預留位置存取整項快訊的實體資料。 - 使用
Loop.Entity
僅參照目前迴圈中的實體。
為說明這點,請參考以下用途:根據使用者職稱,為惡意檔案建立優先處理單。
疊代清單的迴圈
迴圈可針對定義清單中的每個項目執行一組動作,您可以在迴圈中執行下列操作:
- 直接定義清單,或使用會解析為清單的預留位置。
- 根據需求自訂分隔符 (例如逗號或斜線)。
- 使用
Loop.item
預留位置參照疊代項目。
為說明這點,請參考以下用途: 通知使用者密碼外洩。
處理迴圈內的區塊
您可以在迴圈中直接加入應對手冊區塊。將方塊拖曳到迴圈中時,系統會針對迴圈處理的每個項目或實體執行一次動作。
如果迴圈會疊代實體,區塊會包含「將範圍鎖定為疊代」切換鈕。這個切換鈕可控管區塊存取實體資料中的動作:
- 開啟:區塊內的所有步驟都會限定於該特定迴圈疊代中的目前實體。這可確保區塊中的任何實體預留位置和動作,只會針對該次疊代作業的相關資料運作。
- 切換為關閉:區塊內的步驟可存取所有警告實體。區塊會收到快訊中的所有實體,而不只是父項迴圈處理的實體。在這種情況下,選單中會顯示
loop.entity
預留位置,且只能用來存取疊代實體。
在區塊內使用迴圈
您可以在劇本區塊中放置迴圈,以執行重複性工作,做為區塊邏輯的一部分。這可讓您在劇本的範圍區段中,逐一查看項目或實體。
在區塊內設定迴圈的程序,與在劇本中設定任何其他迴圈的程序相同。
詳情請參閱「設定劇本迴圈動作」。
設定應對手冊迴圈動作
如要設定應對手冊迴圈動作,請按照下列步驟操作:
- 在「Navigation」(導覽) 選單中,依序前往「Response」(回應) >「Playbooks」(劇本)。
- 開啟要修改的劇本,或建立新劇本。
- 按一下「+ 開啟步驟選項」。
- 按一下「Loops」分頁標籤。
- 將「For Each Loop」動作拖曳到應對手冊畫布上。系統會自動建立「循環開始」和「循環結束」步驟,並在兩者之間指定新增動作的區域。
- 設定「迴圈開始」:
- 按一下「Loop Start」(迴圈開始) 步驟,開啟「For Each Loop」(每個迴圈) 側邊抽屜。
- 在「參數」分頁中,選取要「透過迴圈處理」的項目 (「實體」或「清單」)。
- 實體:選取實體範圍 (「所有實體」、「可疑實體」或自訂範圍)。
- 清單:在「項目」欄位中,手動或使用預留位置輸入項目清單。定義分隔符號 (例如半形逗號或斜線),用來分隔項目。
- 在「設定」分頁中,設定循環的行為:
- 動作類型:選擇「自動」 (立即啟動) 或「手動」 (需要使用者操作)。
- 如果步驟失敗或超過疊代次數上限:選取迴圈應略過其餘項目並繼續,還是停止應對手冊。
- 在迴圈前後新增動作,準備資料或處理迴圈的結果。
限制
核准連結 不支援劇本迴圈。
使用檢視畫面和劇本迴圈
本節說明自訂和預先建構的小工具如何在檢視畫面中顯示劇本迴圈的資訊,並涵蓋將迴圈產生的資料視覺化呈現的重要層面。
自訂小工具
雖然無法直接從內部迴圈步驟參照預留位置,但您可以在迴圈執行期間彙整結果,並顯示在小工具中。如要在自訂小工具中顯示匯總結果,請在迴圈中使用內容值 (例如,使用「工具」Power-Up 中的「Append to Context Value」動作)。
預先建構的小工具
Google 提供預先建構的小工具,可與劇本設計工具中支援的動作完美整合。將支援的動作拖曳到劇本設計工具時,系統會建議相關的預建小工具。即使在迴圈中使用,這些小工具也會直接連結至動作。
應對手冊模擬工具中的迴圈
教戰手冊模擬器會詳細呈現包含迴圈和區塊的教戰手冊。此外,它也支援巢狀結構,例如巢狀迴圈 (迴圈內含區塊,以及區塊內含迴圈)。在模擬器檢視器中,步驟會由上而下顯示 (最舊的步驟在最上方,最新的步驟在最下方),並自動捲動顯示最新活動。
詳情請參閱「使用 Playbook 模擬器」。
客服案件概覽
如果劇本包含迴圈,執行時「案件」頁面的多個區域會顯示進度資訊和每次疊代的結果。
以下各節說明小工具、劇本檢視器和案件牆如何呈現與這些迴圈相關的資訊。
小工具
案件總覽結果中的預建小工具,會根據對應動作顯示資訊。如果動作在迴圈內執行,小工具會動態更新,顯示最新迴圈疊代的結果。
應對手冊檢視器
執行含有迴圈的劇本時,您可以在劇本檢視器中追蹤劇本進度,以及每次疊代的結果。如要存取這項資訊,請在案件中選取相關快訊,然後按一下「應對手冊」分頁標籤。
劇本檢視器會以階層式結構顯示迴圈和區塊。這個組織有助於呈現巢狀程序的流程,並瞭解每個步驟的背景資訊。
在教戰手冊檢視器中,您可以執行下列操作:
- 請檢查每次疊代,因為迴圈步驟會分組。
- 在疊代之間切換,檢查個別結果。
- 選取迴圈中的步驟,即可在側邊抽屜中顯示疊代次數。
- 按一下「查看結果」,即可顯示迴圈名稱和疊代次數。
案件總覽
迴圈疊代產生的每個結果都會顯示在「案件牆」上,並附上迴圈指標,例如疊代次數。這有助於追蹤及區分每次疊代期間執行的動作。
應用實例範例
本節提供實用範例,說明如何使用應對手冊迴圈自動執行不同類型的工作流程。
掃描雜湊並為惡意雜湊建立工單
在本使用案例中,請執行下列步驟:
- 使用 VirusTotal 掃描快訊中所有檔案的雜湊值。
- 系統會自動為每個遭判定為惡意檔案的項目建立專屬工單。
如要建立應對手冊,請按照下列步驟操作:
如要建立劇本,請完成下列步驟:
- 將「VirusTotal - Enrich Hash」動作拖曳至應對手冊畫布,並在新增迴圈前進行設定。
- 將「For Each Loop」拖曳到畫布上。
- 按一下「循環開始」。
- 在「參數」分頁中,選取「實體」做為「迴圈遍歷」類型。
- 從「實體」選單中選取「所有標為可疑的實體」。 這個步驟可確保迴圈執行範圍僅限於前一個步驟中,由「VirusTotal - Enrich Hash」動作標示為可疑的實體。
- 將「建立支援單」動作拖曳到迴圈中。這個動作的確切名稱和設定會因使用的票務系統整合而異。
- 在「建立支援單」動作的設定中:
- 輸入票券名稱,例如
Malicious File Detected
。 - 在「說明」欄位中,使用預留位置選單插入迴圈中目前實體的詳細資料 (例如
Entity.Identifier
或Entity.Type
)。加入 VirusTotal 擴充功能提供的任何相關資訊,這些資訊現在與可疑實體相關聯。
- 輸入票券名稱,例如
針對 VirusTotal 判定為惡意內容的每個檔案雜湊值,系統都會建立含有相關詳細資料的專屬案件。
根據使用者職稱,為惡意檔案建立優先順序較高的支援單
在這個用途中,識別惡意檔案後 (如上一個用途所述),請根據與檔案相關聯的內部使用者職稱是否包含「執行長」,建立不同優先順序的新工單。
開始之前,請確認您已完成先前使用案例的初始步驟:
- 迴圈前的 VirusTotal - Enrich Hash 動作,以所有檔案雜湊實體為目標。
- For Each Loop 動作會疊代實體,範圍設為「所有標為可疑的實體」。
如要為惡意檔案建立優先順序較高的支援單,請完成下列步驟:
- 在迴圈內新增條件式動作。
- 關閉「將範圍鎖定至疊代」切換鈕,即可存取迴圈實體以外的其他警報實體。
- 從「實體」選單中選取「內部使用者」。
- 設定條件,檢查
Entity.job
是否包含CEO
。這項動作會將優先順序設為「重大」CRITICAL。 - 使用 ELSE 分支處理不涉及
CEO
的情境 (這會將優先順序設為 HIGH)。 - 將「建立工單」動作拖曳到第一個分支:
- 建立標題 (例如
CRITICAL: Malicious File Detected - Potential CEO Impact
)。 - 將事件優先順序設為「重大」CRITICAL。
- 在「說明」欄位中,加入使用者的相關詳細資料,以及 VirusTotal 豐富資料中的資訊。
- 將另一個「建立工單」動作拖曳到「ELSE」分支:
- 建立標題 (例如
Attention: Malicious File Detected
)。 - 將事件優先順序設為「高」。
- 在「說明」欄位中,加入使用者的相關詳細資料,以及 VirusTotal 豐富資料中的資訊。
劇本會檢查每個惡意檔案的相關內部使用者職稱。如果標題包含 CEO
,系統會建立「重大」CRITICAL優先順序單。否則,系統會建立 HIGH 優先順序的單子。
通知使用者密碼外洩
資料外洩偵測解決方案會提供使用者名稱 (電子郵件地址) 清單,列出最近因資料外洩而遭盜用的密碼。您想為每位受影響的使用者傳送個人化電子郵件通知,而不是向所有使用者傳送同一封電子郵件。受影響的使用者名單位於「alert.affected_users」alert.affected_users欄位。
如要建立應對手冊,請按照下列步驟操作:
- 將「For Each」迴圈動作拖曳到應對手冊畫布上。
- 按一下「Loop Start」步驟。
- 在「參數」分頁中,選取「清單」做為「Loop over」(迴圈遍歷)類型。
- 在「項目」欄位中,使用
alert.affected_users
預留位置。 - 如果
alert.affected_users
中的清單使用逗號以外的分隔符號,請在「分隔符號」欄位中更新該分隔符號。 - 將「電子郵件 - 傳送電子郵件」動作拖曳到迴圈中。
- 在「電子郵件 - 傳送電子郵件」動作的設定中:
- 在「收件者」欄位中,使用
Loop.Item
預留位置。當「清單」迴圈在alert.affected_users
清單中疊代時,Loop.Item
預留位置會代表目前正在處理的電子郵件地址,因此每位使用者都會收到專屬電子郵件。 - 設定電子郵件的主旨和內容,通知使用者密碼遭盜用。
- 在「收件者」欄位中,使用
alert.affected_users
清單中的每位使用者 (電子郵件地址) 都會收到個人專屬的電子郵件通知,瞭解自己的密碼遭到盜用。
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。