您可以通過建立自訂警示規則,配置需要監控的事件,從而更加靈活地進行企業安全監控。Action Trail會根據您添加的查詢統計、定義的檢查頻率、觸發條件等配置產生警示,並根據您所選擇的警示策略和行動策略進行警示降噪和通知。本文為您介紹如何建立自訂警示規則、不同情境的自訂警示語句和自訂警示樣本。
背景資訊
自訂警示規則使用SQL(Structured Query Language)文法篩選事件。關於SQL文法的更多資訊,請參見查詢概述和分析概述。
操作步驟
在左側導覽列,單擊事件告警。
在警示中心頁面的警示規則頁簽,單擊建立警示。
在建立警示面板,添加查詢統計。
單擊查詢統計右側的添加。
在查詢統計對話方塊的進階配置頁簽,選擇類型為日誌庫、授權方式為預設。
說明地區和專案將自動填入,與啟用事件警示的跟蹤相同,無需手動設定。
選擇跟蹤投遞的日誌庫(日誌庫名稱格式為
actiontrail_<跟蹤名稱>
)選擇是否開啟獨享SQL。
說明自動:預設不使用獨享SQL。當遇到查詢並發限制或者查詢結果不精確時,自動嘗試使用獨享SQL重新查詢。
啟用:始終使用獨享SQL進行查詢和分析。
關閉:關閉獨享SQL。
關於開啟獨享SQL的更多資訊,請參見開啟SQL獨享版。
設定查詢區間,並在查詢右側的文字框,輸入自訂警示語句,然後單擊預覽。
關於自訂警示語句的更多資訊,請參見自訂警示語句。
單擊確認。
在警示監控規則面板,設定規則名稱、檢查頻率、分組評估、觸發條件、添加標籤、添加標註、恢複通知、進階配置和輸出目標等參數。
關於參數的更多資訊,請參見警示監控規則參數。
單擊確定。
建立自訂警示規則成功後,警示規則列表中顯示新建立的警示規則,您可以根據需求管理警示規則。具體操作,請參見管理警示規則。
自訂警示語句
情境 | 說明 | 自訂警示語句 |
篩選雲端服務和事件 | 通過指定雲端服務名稱(serviceName)和事件名稱(eventName),對特定雲端服務和事件進行警示。 |
|
擷取和指定參數 | 事件參數以JSON格式儲存在event.requestParameterJson參數中,Action Trail可以針對事件參數的具體取值進行警示。 |
|
擷取資源 | 通過指定事件的相關資源名稱(resourceName)和事件的相關資源類型(resourceType),擷取事件的資源。 關於參數的更多資訊,請參見管控事件結構定義。 | 擷取單個資源。例如:擷取Elastic Compute Service釋放執行個體事件中操作的執行個體ID。
|
擷取身份 | 您可以擷取事件中的身份資訊,對指定身份進行警示。 身份資訊(userIdentity)包含身份類型(type)、身份名稱(userName)、身份ID(principalId)、阿里雲帳號ID(accountId)等多個參數。關於參數的更多資訊,請參見管控事件結構定義。 |
|
統計數量 | 您可以統計事件發生次數,超過指定次數時進行警示。 |
|
自訂警示樣本
arbitrary函數用於返回x中任意一個非空的值,文法為:arbitrary(x)
。關於arbitrary函數的更多資訊,請參見arbitrary函數。以下為您介紹兩個使用arbitrary函數的自訂警示樣本:
樣本一:RDS執行個體釋放警示
event.serviceName: RDS and (event.eventName: DeleteDBInstance or event.eventName: Release or event.eventName: DestroyDBInstance) | SELECT account_id, resourceArray[num] as instance_id, ram_user_id, user_type, user_name FROM (SELECT "event.userIdentity.accountId" as account_id, "event.userIdentity.principalId" as ram_user_id, split("event.resourceName", ';') as resourceArray, array_position(split("event.resourceType", ';'), 'ACS::RDS::DBInstance') as num, "event.userIdentity.type" as user_type, "event.userIdentity.userName" as user_name FROM log ) where num > 0
樣本二:安全性群組配置變更警示
event.eventName: CreateSecurityGroup OR event.eventName: AuthorizeSecurityGroup OR event.eventName: AuthorizeSecurityGroupEgress OR event.eventName: RevokeSecurityGroup OR event.eventName: RevokeSecurityGroupEgress OR event.eventName: JoinSecurityGroup OR event.eventName: LeaveSecurityGroup OR event.eventName: DeleteSecurityGroup OR event.eventName: ModifySecurityGroupPolicy) | select "event.userIdentity.accountId" as account_id, "event.userIdentity.principalId" as ram_user_id, "event.eventName" as event_name, arbitrary("event.userIdentity.type") as user_type, arbitrary("event.userIdentity.userName") as user_name group by account_id, ram_user_id, event_name
相關文檔
您還可以通過Log Service建立自訂警示規則。具體操作,請參見建立日誌警示監控規則。
當您開啟警示規則後,可以通過Log Service查看相關的資訊。具體操作,請參見管理警示監控規則。