分享方式:


監視自動化規則和劇本的健康情況

為了確保 Microsoft Sentinel 服務中安全性協調流程、自動化和回應作業正常運作和效能,請透過監視其執行記錄,以追蹤自動化規則和劇本的健康情況。

為相關利害關係人設定健康情況事件的通知,這些相關利害關係人就可以採取行動。 例如,定義和傳送電子郵件或 Microsoft Teams 訊息、在票證系統中建立新票證等。

本文說明如何使用 Microsoft Sentinel 的狀況監控功能,從 Microsoft Sentinel 中追蹤自動化規則和劇本的健康情況。 如需詳細資訊,請參閱 Microsoft Sentinel 的稽核和狀況監控

使用 SentinelHealth 資料表 (公開預覽)

若要從 SentinelHealth 資料表取得自動化健康情況資料,則須先開啟工作區的 Microsoft Sentinel 健康情況功能。 如需詳細資訊,請參閱開啟 Microsoft Sentinel 的健康情況監視

開啟健康情況功能後,自動化規則和劇本產生第一個成功或失敗事件時會建立 SentinelHealth 資料表。

了解 SentinelHealth 資料表事件

下列類型的自動化健康情況事件會記錄在 SentinelHealth 資料表中:

  • 自動化規則執行。 每當符合自動化規則的條件時記錄下來並導致其執行。 除了基本 SentinelHealth 資料表中的欄位之外,這些事件也會包含執行自動化規則的唯一擴充屬性,包括規則所呼叫劇本的清單。 下列樣本查詢會顯示下列事件:

    SentinelHealth
    | where OperationName == "Automation rule run"
    
  • 已觸發劇本。 每當從入口網站或透過 API 手動在事件上觸發劇本時記錄。 除了基本 SentinelHealth 資料表中的欄位之外,這些事件也會包含劇本手動觸發的唯一擴充屬性。 下列樣本查詢會顯示下列事件:

    SentinelHealth
    | where OperationName == "Playbook was triggered"
    

如需詳細資訊,請參閱 SentinelHealth 資料表資料行結構描述

狀態、錯誤和建議的步驟

對於自動化規則執行狀態,您可能會看到下列狀態:

  • 成功:成功執行規則,觸發所有動作。

  • 部分成功:規則已執行並觸發至少一個動作,但某些動作失敗。

  • 失敗:因為下列其中一個原因,自動化規則未執行任何動作:

    • 條件評估失敗。
    • 符合條件,但第一個動作失敗。

對於已觸發劇本狀態,您可能會看到下列狀態:

  • 成功:已成功觸發劇本。

  • 失敗:無法觸發劇本。

    注意

    成功表示自動化規則已成功觸發劇本。 其不會告訴您劇本何時開始或結束、劇本中的動作結果,或劇本的最終結果。

    若要尋找此資訊,請查詢 Logic Apps 診斷記錄。 如需詳細資訊,請參閱取得完整的自動化圖片

錯誤描述和建議的動作

錯誤描述 建議的動作
無法新增工作:<TaskName>
找不到事件/警示。
請確定事件/警示存在,然後再試一次。
無法新增工作:<TaskName>
事件已經包含允許的工作數目上限。
如果需要此工作,請查看是否有任何可移除或合併的工作,然後再試一次。
無法修改屬性:<PropertyName>
找不到事件/警示。
請確定事件/警示存在,然後再試一次。
無法修改屬性:<PropertyName>
太多要求,超過節流限制。
無法觸發劇本:<PlaybookName>
找不到事件/警示。
如果嘗試視需要觸發劇本時發生錯誤,請確定事件/警示存在,然後再試一次。
無法觸發劇本:<PlaybookName>
找不到該劇本,或 Microsoft Sentinel 缺少對它的權限。
編輯自動化規則,尋找並選取其新位置中的劇本,然後儲存。 請確定 Microsoft Sentinel 有權執行此劇本
無法觸發劇本:<PlaybookName>
包含不受支援的觸發程序類型。
請確定劇本以正確的 Logic Apps 觸發程序開頭:Microsoft Sentinel 事件或 Microsoft Sentinel 警示。
無法觸發劇本:<PlaybookName>
訂用帳戶已停用並標示為唯讀。 除非重新啟用訂用帳戶,否則無法執行此訂用帳戶中的劇本。
重新啟用劇本所在的 Azure 訂用帳戶。
無法觸發劇本:<PlaybookName>
該劇本已停用。
在 [自動化] 底下的 [作用中劇本] 索引標籤中,或在 Logic Apps 資源頁面中啟用劇本。
無法觸發劇本:<PlaybookName>
無效的範本定義。
劇本定義中發生錯誤。 移至 Logic Apps 設計工具以修正問題並儲存劇本。
無法觸發劇本:<PlaybookName>
存取控制設定會限制 Microsoft Sentinel。
Logic Apps 設定允許限制存取,以觸發劇本。 此限制對此劇本有效。 請移除此限制,如此 Microsoft Sentinel 就不會遭到封鎖。 深入了解
無法觸發劇本:<PlaybookName>
Microsoft Sentinel 缺少執行它的權限。
Microsoft Sentinel 需要劇本的執行權限
無法觸發劇本:<PlaybookName>
劇本未移轉至新的權限模型。 授與 Microsoft Sentinel 權限以執行此劇本並重新儲存規則。
授與 Microsoft Sentinel 權限以執行此劇本並重新儲存規則。
無法觸發劇本:<PlaybookName>
太多要求,超過工作流程節流限制。
等候工作流程執行的數目已超過允許的上限。 請嘗試在觸發程序並行設定中增加 'maximumWaitingRuns' 的值。
無法觸發劇本:<PlaybookName>
太多要求,超過節流限制。
深入瞭解訂用帳戶和租用戶限制
無法觸發劇本:<PlaybookName>
禁止存取。 受控識別缺少設定,或已設定 Logic Apps 網路限制。
如果劇本使用受控識別,請確定受控識別已獲指派權限。 劇本可能會有網路限制規則,以防止在封鎖 Microsoft Sentinel 服務時劇本遭到觸發。
無法觸發劇本:<PlaybookName>
訂用帳戶或資源群組已鎖定。
移除鎖定,以允許鎖定範圍內的 Microsoft Sentinel 觸發劇本。 深入瞭解鎖定的資源
無法觸發劇本:<PlaybookName>
呼叫者缺少對劇本的必要劇本觸發權限,或 Microsoft Sentinel 缺少對它的權限。
嘗試視需要觸發劇本的使用者缺少劇本上的 Logic Apps 參與者角色,或無法觸發劇本。 深入了解
無法觸發劇本:<PlaybookName>
連線中的認證無效。
檢查連線在 Azure 入口網站 API 連線服務中使用的認證
無法觸發劇本:<PlaybookName>
劇本 ARM 識別碼無效。

取得完整的自動化圖片

Microsoft Sentinel 的健康情況監視資料表可讓您追蹤何時觸發劇本,但若要監視劇本內發生的情況及其執行時的結果,您也必須在 Azure Logic Apps 中開啟診斷,以將下列事件內嵌到 AzureDiagnostics 資料表中:

  • {動作名稱} 已啟動
  • {動作名稱} 已結束
  • 工作流程 (劇本) 已啟動
  • 工作流程 (劇本) 已結束

這些新增的事件提供了有關您的劇本中正在採取的動作的更多深入解析。

開啟 Azure Logic Apps 診斷

對於您有興趣監視的每個劇本,為您的邏輯應用程式啟用 Log Analytics。 請務必選取 [傳送至 Log Analytics 工作區] 作為記錄目的地,然後選擇 Microsoft Sentinel 工作區。

將 Microsoft Sentinel 和 Azure Logic Apps 記錄相互關聯

既然您已在工作區中擁有自動化規則和劇本的記錄,以及個別 Logic Apps 工作流程的記錄,您可以將其相互關聯以瞭解完整情況。 請考量下列範例查詢:

SentinelHealth 
| where SentinelResourceType == "Automation rule"
| mv-expand TriggeredPlaybooks = ExtendedProperties.TriggeredPlaybooks
| extend runId = tostring(TriggeredPlaybooks.RunId)
| join (AzureDiagnostics 
    | where OperationName == "Microsoft.Logic/workflows/workflowRunCompleted"
    | project
        resource_runId_s,
        playbookName = resource_workflowName_s,
        playbookRunStatus = status_s)
    on $left.runId == $right.resource_runId_s
| project
    RecordId,
    TimeGenerated,
    AutomationRuleName= SentinelResourceName,
    AutomationRuleStatus = Status,
    Description,
    workflowRunId = runId,
    playbookName,
    playbookRunStatus

使用健康情況監視活頁簿

自動化健康情況活頁簿可協助您將健康情況資料視覺化,以及將我們剛才提及的兩種記錄相互關聯。 活頁簿包含下列顯示:

  • 自動化規則健康情況和詳細資料
  • 劇本觸發程序健康情況和詳細資料
  • 劇本執行健康情況和詳細資料 (需要在劇本層級上啟用 Azure 診斷)
  • 每個事件的自動化詳細資料

例如:

此螢幕擷取畫面顯示自動化健康情況活頁簿的開啟面板。

選取 [由自動化規則執行的劇本] 索引標籤,以查看劇本活動。

此螢幕擷取畫面顯示自動化規則所呼叫的劇本清單。

選取劇本,以查看其在下方向下切入圖表中的執行清單。

此螢幕擷取畫面顯示所選劇本的執行清單。

選取特定執行以查看劇本中動作的結果。

此螢幕擷取畫面顯示此劇本的指定執行中所採取的動作。

下一步