Siemplify 模組
class Siemplify.Siemplify
Bases: SiemplifyBase
端點:external/v1/sdk/CaseFullDetails
add_agent_connector_logs
add_agent_connector_logs(agent_id, connector_id, logs_package)
新增遠端代理程式 connector_id 連接器的記錄。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| agent_id | {string} | 代理 ID | 不適用 | 不適用 |
| connector_id | {string} | 連接器執行個體 ID | 不適用 | 不適用 |
| logs_package | {dict} | ConnectorLogPackage | 不適用 | 不適用 |
add_attachment
add_attachment(file_path, case_id, alert_identifier, description=None, is_favorite=False)
這個函式會將含有檔案附件的項目新增至案件牆 (使用者可從用戶端下載至本機電腦)。這項功能的作用與新增證據 (位於案件總覽畫面底部) 基本上相同。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 留言 |
|---|---|---|---|---|
| file_path | {string} | 檔案路徑 | 任何可存取的路徑 | 路徑也可以是遠端位置。您必須具備該檔案的讀取權限 |
| case_id | {string} | 案件 ID | 要將附件新增至案件總覽的案件 ID | 預設為目前的案件 |
| alert_identifier | {string} | 快訊 ID | 要與附件建立關聯的快訊 ID 字串 | 預設為目前執行的快訊 |
| description | {string} | 附件說明 | 任何字串 | 預設為無。 選用參數。 |
| is_favorite | {boolean} | 常用附件 | True/False | 預設為 False。選用參數。 |
傳回
{long} attachment_id
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.add_attachment(r'C:/temp/investigation.txt', description='Deep investigation report by TIER3 team', is_favorite=True)
結果行為
在這個範例中,我們會將本機電腦 (伺服器本身) 上 C:/temp 的 investigation.txt 上傳至案件牆。系統會在案件總覽中,為該項目新增註解,並在說明中加入字串。is_favorite 旗標已設為 True,因此這個新項目也會加上星號 (收藏)。
add_comment
add_comment(comment, case_id, alert_identifier)
在特定案件中新增註解。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 留言 |
|---|---|---|---|---|
| comment | {string} | 要新增至案件總覽的註解 | 「這則快訊中的事件似乎很可疑」 | 與案件相關的註解 |
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
傳回
NoneType
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
add_comment = "This alert is important"
alert_identifier = "ad6879f1-b72d-419f-990c-011a2526b16d"
case_id = "234"
siemplify.add_comment(comment, case_id, alert_identifier)
結果行為
提供的註解會新增至案件 234。
結果值
無
add_entities_to_custom_list
add_entities_to_custom_list(custom_list_items)
將新增實體時提供的自訂名單,加入自訂名單。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| custom_list_items | {string} | 自訂清單項目 | 不適用 | 不適用 |
傳回
{[CustomList]}:包含新增自訂清單項目的清單。
結果行為
實體已新增至自訂清單類別。
add_entity_insight
add_entity_insight(domain_entity_info, message, case_id, alert_id)
新增實體洞察。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| domain_entity_info | {string} | 實體 ID | "192.0.2.1" | {DomainEntityInfo} |
| 訊息 | {string} | 洞察訊息 | 這是 Example DNS | 不適用 |
| case_id | {string} | 要新增至實體深入分析的案件 ID | 234 | 不適用 |
| alert_id | {string} | 要新增至實體洞察資料的快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
傳回
{boolean} True (如果成功)
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
entity = "192.0.2.1"
alert_identifier = "ad6879f1-b72d-419f-990c-011a2526b16d"
case_id = "234"
siemplify.add_entity_insight(domain_entity_info=entity, message=message, case_id=case_id, alert_id=alert_identifier)
結果行為
指定訊息會新增為案件 234 中指定警告 ID 實體 192.0.2.1 的深入分析。
結果值
沒錯。
如果未新增洞察,則為 False。
add_entity_to_case
add_entity_to_case(case_id, alert_identifier, entity_identifier, entity_type, is_internal, is_suspicious, is_enriched, is_vulnerable, properties, environment)
將實體新增至案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| entity_identifier | {string} | 實體 ID | 192.0.2.1, example.com | 不適用 |
| entity_type | {string} | 實體 ID 的實體類型 | "ADDRESS" | 不適用 |
| is_internal | {boolean} | 不適用 | True/False | 不適用 |
| is_suspicious | {boolean} | 不適用 | True/False | |
| is_enriched | {boolean} | 不適用 | True/False | 預設為 False |
| is_vulnerable | {boolean} | 不適用 | True/False | 預設為 False |
| 屬性 | {dict} | 實體的屬性 | {"property":"value"} | 不適用 |
傳回
NoneType
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
case_id = "234"
alert_identifier = "ad6879f1-b72d-419f-990c-011a2526b16d"
entity = "192.0.2.1"
entity_type = "ADDRESS"
properties = {"property": "value"}
siemplify.add_entity_to_case(case_id=case_id,
alert_identifier = alert_identifier,
entity_identifier = entity,
entity_type = entity_type,
is_internal = True,
is_suspicious = False,
is_enriched = False,
is_vulnerable = False,
properties = properties,
environment=None)
結果行為
系統會將含有提供資訊的實體,新增至案件 234 中的指定警示。
結果值
無
add_or_update_case_task
add_or_update_case_task(task)
新增或更新工作:如有工作 ID,則更新工作;否則新增 (建立) 工作。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 任務 | {Task} | 要新增至案件或更新的工作物件 | 不適用 | 不適用 |
傳回
{int}:新工作或更新後工作的 ID。
add_tag
add_tag(tag, case_id, alert_identifier)
為特定案件新增標記。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 標記 | {string} | 要新增的標記 | 不適用 | 不適用 |
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
any_entity_in_custom_list
any_entity_in_custom_list(custom_list_items)
檢查指定清單中是否有任何實體,其自訂名單記錄含有指定類別。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| custom_list_items | {[CustomList]} | 要檢查實體的自訂名單項目 | 不適用 | 不適用 |
傳回
{boolean} 如果找到實體,則為 True,否則為 False。
結果值
True 或 False
assign_case
assign_case(user, case_id, alert_identifier)
這個函式會將目前的案件指派給使用者。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 使用者 | {string} | 使用者/角色 | 管理員、@Tier1 | 不適用 |
| case_id | {string} | 要指派給使用者的案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 要指派給使用者的快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 這個值會在動作執行期間擷取 |
傳回
NoneType
結果行為
案件會指派給指定使用者。
結果值
無
attach_workflow_to_case
attach_workflow_to_case(workflow_name, cyber_case_id, indicator_identifier)
將應對手冊附加至案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| workflow_name | {string} | 工作流程名稱 | 不適用 | 不適用 |
| cyber_case_id | {string} | 案件 ID | 234 | 不適用 |
| indicator_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
傳回
伺服器作業的 {string} 狀態碼
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
alert_identifier = "ad6879f1-b72d-419f-990c-011a2526b16d"
case_id = "234"
workflow_name = "Workflow 234"
siemplify.attach_workflow_to_case(workflow_name=workflow_name, cyber_case_id=case_id, indicator_identifier=alert_identifier)
結果行為
工作流程 234 會附加至案件 234。
結果值
無
batch_update_case_id_matches
batch_update_case_id_matches(case_id_matches)
使用合適的外部案件 ID 批次更新案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id_matches | {list} | SyncCaseIdMatch 物件清單 |
傳回
{list} 成功更新的案件 ID 清單。
change_case_priority
change_case_priority(priority, case_id, alert_identifier)
變更案件優先順序。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 優先順序 | {int} | 要變更的案件優先順序 | 40/60/80/100 | 請參閱 ApiSyncCasePriorityEnum。 優先順序對應:{"Low": 40, "Medium": 60, "High": 80, "Critical": 100} |
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
傳回
NoneType
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
priority = 40
alert_identifier = "ad6879f1-b72d-419f-990c-011a2526b16d"
case_id = "234"
siemplify.change_case_priority(priority=priority, case_id=case_id, alert_identifier=alert_identifier)
結果行為
案件 234 的優先順序變更為 40,對應至「低」。
結果值
無
change_case_stage
change_case_stage(stage, case_id, alert_identifier)
變更案件階段。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 在此流程的各個階段 | {string} | 案件目前的階段。 | 事件 | 不適用 |
| case_id | {string} | 案件 ID | 不適用 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
check_marketplace_status
check_marketplace_status()
查看市集狀態。
如果沒有錯誤,函式會傳回 none。否則會傳回例外狀況。
參數
不適用
傳回
無
close_alert
close_alert(root_cause, comment, reason, case_id, alert_id)
這個函式會關閉目前的警告。這與從案件總覽手動關閉警告相同。函式需要關閉原因、根本原因和註解,就像關閉案件快訊一樣。
關閉警告會關閉只有一個警告的新案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| root_cause | {string} | 案件關閉根本原因 | 不適用 | 不適用 |
| 留言 | {string} | 留言 | 不適用 | 不適用 |
| reason | {ApiSyncAlertCloseReasonEnum} | 不適用 | 不適用 | 請參閱 SiemplifyDataModel.ApiSyncAlertCloseReasonEnum |
| case_id | {string} | 警告所在的案件 ID | 234 | 不適用 |
| alert_id | {string} | 要關閉的警告 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
傳回
{dict} 伺服器作業結果
close_case
close_case(root_cause, comment, reason, case_id, alert_identifier)
關閉案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| root_cause | {string} | 關閉案件的根本原因 | 不適用 | 不適用 |
| 留言 | {string} | 留言 | 不適用 | 不適用 |
| reason | {ApiSyncAlertCloseReasonEnum} | 案件關閉原因 | 請參閱 SiemplifyDataModel.ApiSyncAlertCloseReasonEnum | |
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_id | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
create_case
create_case(case_info)
這個函式會使用 case_info 字典中的快訊和事件建立案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_info | {CaseInfo} | 案件資訊物件 | 不適用 | 查看SiemplifyConnectorsDataModel.CaseInfo |
傳回
NoneType
結果行為
系統會根據提供的案件資料建立案件。
結果值
無
create_case_insight_internal
create_case_insight_internal(case_id, alert_identifier, triggered_by, title, content, entity_identifier, severity, insight_type, additional_data=None, additional_data_type=None, additional_data_title=None, original_requesting_user=None, entity_type=None)
新增洞察。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
| triggered_by | {string} | 整合作業名稱 | 不適用 | 不適用 |
| title | {string} | 洞察標題 | 不適用 | 不適用 |
| 內容 | {string} | 洞察訊息 | 不適用 | 不適用 |
| entity_identifier | {string} | 實體 ID | 不適用 | 不適用 |
| 嚴重性 | {int} | 嚴重性 ID | 0 = 資訊, 1 = 警告, 2 = 錯誤 |
不適用 |
| insight_type | {int} | 深入分析結果類型 | 0 = 一般, 1 = 實體 |
不適用 |
| additional_data | 不適用 | 不適用 | 不適用 | 不適用 |
| additional_data_type | 不適用 | 不適用 | 不適用 | 不適用 |
| additional_data_title | 不適用 | 不適用 | 不適用 | 不適用 |
| original_requesting_user | 不適用 | 不適用 | 不適用 | 不適用 |
| entity_type | {string} | 實體類型 | "ADDRESS" | 不適用 |
傳回
如果成功,則為 {boolean} True。
create_connector_package
create_connector_package(connector_package)
在系統中建立連接器套件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| connector_package | {string} | JSON 格式的連接器套件 | 不適用 | 不適用 |
dismiss_alert
dismiss_alert(alert_group_identifier, should_close_case_if_all_alerts_were_dismissed, case_id)
結束
end(message, result_value, execution_state=0)
結束指令碼。
end() 函式之後不會執行任何其他程式碼。
最終結果值會寫入 stdout。
排定的工作不一定要使用結束函式。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 訊息 | {string} | 要向用戶端顯示的輸出訊息 | 已完成動作 | 不適用 |
| result_value | {int/string/dict} | 傳回值 | 不適用 | 不適用 |
| execution_state | {int} | 目前動作狀態的指標。主要用於非同步動作,標示動作是否已完成。 | 0 (EXECUTION_STATE_COMPLETED)、 1 (EXECUTION_STATE_INPROGRESS)、 2 (EXECUTION_STATE_FAILED)、 3 (EXECUTION_STATE_TIMEDOUT) |
預設值為 0 |
傳回
將結果資料傳回主機程序。
end_script
end_script()
escalate_case
escalate_case(comment, case_id, alert_identifier)
提報案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 留言 | {string} | 提報留言 | 不適用 | 不適用 |
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
extract_configuration_param
extract_configuration_param(provider_name, param_name, default_value=None, input_type=<class 'str'>, is_mandatory=False, print_value=False)
從整合執行個體取得設定參數。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| provider_name | {string} | 整合項目名稱 | 不適用 | 不適用 |
| param_name | {string} | 參數名稱 | 不適用 | 不適用 |
| default_value | {any} | 如果未傳遞參數,則預設使用這個值 | 不適用 | 預設為無 (選填) |
| input_type | {obj} | 將參數轉換為其他類型 | 不適用 | 例如 int. str (預設,選用) |
| is_mandatory | {bool} | 如果參數空白,則引發例外狀況 | 不適用 | 預設為 False (選填) |
| print_value | {bool} | 將值輸出至記錄 | 不適用 | 預設為 False (選填) |
傳回
參數值 (預設為字串),除非指定 input_type。
static generate_serialized_object
generate_serialized_object(object_filter)
get_agent_by_id
get_agent_by_id(agent_id)
依 ID 取得代理詳細資料。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| agent_id | {str} | 代理 ID | 不適用 | 不適用 |
傳回
{dict} 發布商詳細資料
get_alerts_ticket_ids_from_cases_closed_since_timestamp
get_alerts_ticket_ids_from_cases_closed_since_timestamp(timestamp_unix_ms, rule_generator)
取得自時間戳記以來已結案案件的警告。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| timestamp_unix_ms | {long} | 時間戳記 | 1550409785000L | 不適用 |
| rule_generator | {string} | 不適用 | 「網路釣魚電子郵件偵測工具」 | 不適用 |
傳回
{list} 則快訊
get_attachment
get_attachment(attachment_id)
依 ID 取得附件資料。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| attachment_id | {string} | 附件 ID | 不適用 | 不適用 |
傳回
{BytesIO} 附件資料
get_attachments
get_attachments(case_id)
取得案件附件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {string} | 案件 ID | 234 | 不適用 |
傳回
{dict} 個附件
結果值
[{"is_favorite": False, "description": "", "type": ".txt", "id": 1, "name":
"test.py"}]
_get_case_by_id
_get_case_by_id(case_id)
使用案件 ID 取得案件。
這個函式會與下列端點互動:
external/v1/sdk/CaseFullDetails
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {[string]} | 案件 ID | 不適用 | 不適用 |
傳回
{dict} 案件資料。
get_case_closure_details
get_case_closure_details(case_id_list)
取得案件結案詳細資料。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id_list | {[string]} | 案件 ID 清單 | 不適用 | 不適用 |
傳回
{[dict]} 包含案件結案詳細資料的字典清單。
結果值
[{'case_closed_action_type': 1, 'reason': NotMalicious', 'root_cause':
'Other'}]
case_closed_action_type 參數可能的值如下:
- 0 = 自動
- 1 = 手動
get_case_comments
get_case_comments(case_id)
這個函式會從提供的案件中取得註解。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {string} | 案件 ID | 234 | 不適用 |
傳回
清單
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
siemplify.get_case_comments(case_id)
結果行為
系統會擷取案件的所有留言。
結果值
[
{
u 'comment': u 'Test',
u 'case_id': 10085,
u 'is_favorite': False,
u 'alert_identifier': None,
u 'creator_user_id': u 'Admin',
u 'type': 5,
u 'id': 1,
u 'modification_time_unix_time_in_ms': 1563272078332L
}, {
u 'comment': u 'jhfksdh',
u 'case_id': 10085,
u 'is_favorite': False,
u 'alert_identifier': None,
u 'creator_user_id': u 'Admin',
u 'type': 5,
u 'id': 2,
u 'modification_time_unix_time_in_ms': 1563272079941L
}, {
u 'comment': u 'kjfhsdm',
u 'case_id': 10085,
u 'is_favorite': False,
u 'alert_identifier': None,
u 'creator_user_id': u 'Admin',
u 'type': 5,
u 'id': 3,
u 'modification_time_unix_time_in_ms': 1563272080598L
}
]
get_case_tasks
get_case_tasks(case_id)
依案件 ID 擷取所有工作。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {int/str} | 案件 ID | 234 | 函式可接收 int 或 str |
傳回
{[Task]} 案件所屬的工作物件清單。
請參閱 SiemplifyDataModel.Task。
get_cases_by_filter
get_cases_by_filter(environments=None, analysts=None, statuses=None, case_names=None, tags=None, priorities=None, stages=None, case_types=None, products=None, networks=None, ticked_ids_free_search='', case_ids_free_search='', wall_data_free_search='', entities_free_search='', start_time_unix_time_in_ms=-1, end_time_unix_time_in_ms=-1)
依要求的篩選條件取得案件。
*caseFilterValue* object - { 'Title':'Merged Case', 'Value': 'Merged', 'Title':'Involved Suspicious Entity', 'Value': 'InvolvedSuspiciousEntity', 'Title':'Manual', 'Value': 'Manual', 'Title':'Simulated Alerts', 'Value': 'Simulated',}
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| environments | {[string]} | 環境名稱清單 (環境) | 不適用 | 如未提供環境,則會使用 None (選用) |
| 分析人員 | {[string]} | 分析師姓名清單 (案件指派的使用者/角色) | 不適用 | 如未提供分析師,則使用 None (選用) |
| 狀態 | {[int]} | 篩選依據狀態清單 | 不適用 | 有效的
如未提供狀態,系統會使用 |
| case_names | {[string]} | 案件名稱清單 | 不適用 | 如未提供 case_names,則會使用 None (選用) |
| 標記 | {[string]} | 案件標記清單 | 不適用 | 如未提供標記,則會使用 None (選用) |
| 優先順序 | {[int]} | 優先順序清單 | 請參閱 ApiSyncAlertPriorityEnum。 如未提供優先順序,則會使用 None (選用) |
|
| 階段 | {list} | 階段清單 (caseFilterValue 物件) | 不適用 | 如未提供階段,則會使用 None (選用) |
| case_types | {list} | 物件類型清單 (caseFilterValue 物件) | 不適用 | 有效的
如未提供 |
| 產品 | {list} | 產品清單 (caseFilterValue 物件) | 不適用 | 如未提供產品,則會使用 None (選用) |
| 網路 | {list} | 網路清單 (caseFilterValue 物件) | 不適用 | 如未提供任何網路,則會使用 None (選用) |
| ticked_ids_free_search | {string} | 票券 ID | 不適用 | 如未提供,預設值為「」(選用) |
| case_ids_free_search | {string} | 案件 ID | 不適用 | 如未提供,預設值為「」(選用) |
| wall_data_free_search | {string} | 要搜尋的字串 | 不適用 | 如未提供,預設值為「」(選用) |
| entities_free_search | {string} | 實體 ID | 不適用 | 如未提供,預設值為「」(選用) |
| start_time_unix_time_in_ms | {long} | 不適用 | 不適用 | 預設值 -1 (選用) |
| end_time_unix_time_in_ms | {long} | 不適用 | 不適用 | 預設值 -1 (選用) |
傳回
Case_ids ''
get_cases_by_ticket_id
get_cases_by_ticket_id(ticket_id)
依票證 ID 取得案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| ticket_id | {string} | 票券 ID | 不適用 | 不適用 |
傳回
{[int]} 個案件 ID 清單。
get_cases_ids_by_filter
get_cases_ids_by_filter(status, start_time_from_unix_time_in_ms=None, start_time_to_unix_time_in_ms=None, close_time_from_unix_time_in_ms=None, close_time_to_unix_time_in_ms=None, update_time_from_unix_time_in_ms=None, update_time_to_unix_time_in_ms=None, operator=None, sort_by='START_TIME', sort_order='DESC', max_results=1000)
依篩選條件取得案件 ID。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 狀態 | {str} | 要擷取的案件狀態 | 'OPEN'、'CLOSE'、'BOTH' | 不適用 |
| start_time_from_unix_time_in_ms | {int} | 案件開始時間範圍 (含起始時間) | 不適用 | 預設為 30 天前 (選填) |
| start_time_to_unix_time_in_ms | {int} | 案件開始時間範圍結束值 (含) | 不適用 | 預設為目前時間 (選填) |
| close_time_from_unix_time_in_ms | {int} | 案件結案時間範圍起點 (含) | 不適用 | 預設為 30 天前 (選填) |
| close_time_to_unix_time_in_ms | {int} | 案件結案時間範圍結束日期 (含)。 | 不適用 | 預設為目前時間 (選填) |
| update_time_from_unix_time_in_ms | {int} | 案件修改時間範圍起點 (含) | 不適用 | 預設為開始時間 (選填) |
| update_time_to_unix_time_in_ms | {int} | 案件修改時間範圍結束日期 (含) | 不適用 | 預設為目前時間 (選填) |
| 運算子 | {str} | 時間篩選器的運算子 | OR、AND | 選用 |
| sort_by | {str} | 依時間排序結果 | START_TIME、UPDATE_TIME、CLOSE_TIME | 選用 |
| sort_order | {str} | 排列順序 | ASC、DESC | 預設為遞減排序 (選填) |
| max_results | {int} | 要傳回的結果數量上限 | 不適用 | 預設值為 1000,最大值為 10000 (選填) |
get_configuration
get_configuration(provider, environment, integration_instance)
取得整合設定。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 供應商 | {string} | 整合作業名稱 | 「VirusTotal」 | 不適用 |
| 環境 | {string} | 特定環境或「all」的設定 | 不適用 | 不適用 |
| integration_instance | {string} | 整合執行個體的 ID | 不適用 | 不適用 |
傳回
{dict} 設定詳細資料。
get_configuration_by_provider
get_configuration_by_provider(identifier)
取得整合設定。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 供應商 | {string} | 整合作業名稱 | 「VirusTotal」 | 不適用 |
傳回
{dict} 設定詳細資料
get_existing_custom_list_categories
get_existing_custom_list_categories()
取得所有現有的自訂清單類別。
無論環境為何,這個函式都會傳回 CustomList 設定中所有類別的清單物件。
參數
不適用
傳回
{[unicode]}:Unicode 類型清單,包含現有類別。
範例
from SiemplifyAction import SiemplifyAction siemplify = SiemplifyAction() result = siemplify.get_existing_custom_list_categories()
結果行為
系統會傳回所有現有自訂名單的清單。
結果值
["DenyListed IPs", "AllowListed HOSTs"]
get_external_configuration
get_external_configuration(config_provider, config_name)
取得外部整合設定。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| config_provider | {string} | 不適用 | 不適用 | 不適用 |
| config_name | {string} | 不適用 | 不適用 | 不適用 |
get_integration_version
get_integration_version(integration_identifier)
取得整合版本。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| integration_identifier | {string} | 整合 ID | 不適用 | 不適用 |
傳回
{float} 整合版本
get_publisher_by_id
get_publisher_by_id(publisher_id)
依 ID 取得發布商詳細資料。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| publisher_id | {string} | 發布商 ID | 不適用 | 不適用 |
傳回
{dict} 發布商詳細資料
get_remote_connector_keys_map
get_remote_connector_keys_map(publisher_id)
依發布商 ID 取得遠端連接器加密金鑰。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| publisher_id | {string} | 發布商 ID | 不適用 | 不適用 |
傳回
{dict} 鍵對應
get_similar_cases
get_similar_cases(case_id, ports_filter, category_outcome_filter, rule_generator_filter, entity_identifiers_filter, start_time_unix_ms, end_time_unix_ms)
取得類似案件。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {string} | 案件 ID | 234 | 不適用 |
| ports_filter | {boolean} | True/False 使用通訊埠篩選器 | True/False | 不適用 |
| category_outcome_filter | {boolean} | True/False 使用 category_outcome 篩選器 | True/False | 不適用 |
| rule_generator_filter | {boolean} | True/False 使用 rule_generator 篩選器 | True/False | 不適用 |
| entity_identifiers_filter | {boolean} | True/False 使用 entity_identifiers 篩選器 | True/False | 不適用 |
| start_time_unix_ms | 不適用 | 不適用 | 不適用 | 不適用 |
| end_time_unix_ms | 不適用 | 不適用 | 不適用 | 不適用 |
傳回
{dict}
get_sync_alerts
get_sync_alerts(alert_group_ids)
擷取系統同步處理所需的警示資訊。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| alert_group_ids | {list} | 要擷取的快訊群組 ID 清單 | 不適用 | 不適用 |
傳回
{[SyncAlert]}:SyncAlert 物件清單。
get_sync_cases
get_sync_cases(case_ids)
擷取系統同步處理所需的案件資訊。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_ids | {list} | 要擷取的案件 ID 清單 | 不適用 | 不適用 |
傳回
{[SyncCase]} SyncCase 物件清單。
get_system_info
get_system_info(start_time_unixtime_ms)
get_system_version
get_system_version()
取得目前的 Google Security Operations SOAR 版本。
參數
不適用
傳回
{string} 目前的 Google Security Operations SOAR 版本
get_temp_folder_path
get_temp_folder_path()
取得暫存資料夾的路徑。
參數
不適用
傳回
{string} 暫存資料夾路徑
get_ticket_ids_for_alerts_dismissed_since_timestamp
get_ticket_ids_for_alerts_dismissed_since_timestamp(timestamp_unix_ms)
get_updated_sync_alerts_metadata
get_updated_sync_alerts_metadata(start_timestamp_unix_ms, count, allowed_environments=None, vendor=None)
擷取更新後的追蹤警示中繼資料。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| start_timestamp_unix_ms | {long} | 搜尋 start_timestamp_unix_ms當天或之後更新的快訊 |
不適用 | 如果 end_timestamp_unix_ms 為 None,結束時間就是要求時間。 |
| 數量 | {int} | 要擷取的快訊群組 ID 數量上限 | 不適用 | 不適用 |
| allowed_environments | {[string]} | 要搜尋的環境 | 不適用 | 如果 allowed_environments 為 None,則在所有環境中搜尋 |
| vendor | {string} | 依供應商篩選快訊 | 不適用 | 不適用 |
傳回
{[SyncAlertMetadata]} SyncAlertMetadata 物件清單,依 SyncAlertMetadata.tracking_time 排序。
get_updated_sync_cases_metadata
get_updated_sync_cases_metadata(start_timestamp_unix_ms, count, allowed_environments=None, vendor=None)
擷取更新後的追蹤案件中繼資料。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| start_timestamp_unix_ms | {long} | 搜尋更新時間為 start_timestamp_unix_ms或之後的案件 |
不適用 | 如果 end_timestamp_unix_ms 為 None,結束時間將是要求的時間 |
| 數量 | {int} | 要擷取的案件 ID 數量上限 | 不適用 | 不適用 |
| allowed_environments | {[string]} | 要搜尋的環境 | 不適用 | 如果 allowed_environments 為 None,則在所有環境中搜尋 |
| vendor | {string} | 僅傳回警示源自 vendor 的案件 |
不適用 | 不適用 |
傳回
{[SyncCaseMetadata]} SyncCaseMetadata 物件清單,依 SyncCaseMetadata.tracking_time 排序。
init_proxy_settings
init_proxy_settings()
參數
不適用
is_existing_category
is_existing_category(category)
檢查指定類別是否存在。
如果 CustomList 設定中將確切的類別名稱字串定義為類別,則這個函式會傳回 True (布林值)。
這個函式會忽略環境,並在項目存在時傳回 True,否則傳回 False。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| category | {string} | 要檢查是否存在的類別 | 「DenyListed IPs」 | 不適用 |
傳回
{bool} 如果類別存在,則為 True,否則為 False。
範例 1
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.is_existing_category("WhiteListed HOSTs")
範例 2
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
result = siemplify.is_existing_category("SpecialHosts")
結果行為
程式碼範例 1 的結果會傳回 True,程式碼範例 2 的結果則會傳回 False。
結果值
True 或 False
mark_case_as_important
mark_case_as_important(case_id, alert_identifier)
這個函式會將具有指定快訊 ID 的目前案件標示為重要。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
傳回
NoneType
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
alert_identifier = "ad6879f1-b72d-419f-990c-011a2526b16d"
case_id = "234"
siemplify.mark_case_as_important(case_id=case_id, alert_identifier=alert_identifier)
結果行為
案件已標示為重要,並附上提供的快訊 ID。
結果值
無
raise_incident
raise_incident(case_id, alert_identifier)
這個函式會將目前案件升級為事件,並附上快訊 ID。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alert_identifier | {string} | 快訊 ID | ad6879f1-b72d-419f-990c-011a2526b16d | 不適用 |
傳回
NoneType
範例
from SiemplifyAction import SiemplifyAction
siemplify = SiemplifyAction()
alert_identifier = "ad6879f1-b72d-419f-990c-011a2526b16d"
case_id = "234"
siemplify.raise_incident(case_id=case_id, alert_identifier=alert_identifier)
結果行為
案件 234 將視為事件。
結果值
無
remove_entities_from_custom_list
remove_entities_from_custom_list(custom_list_items)
從指定類別的自訂名單中移除實體。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| custom_list_items | {[CustomList]} | 自訂清單項目 | 不適用 | 不適用 |
傳回
{[CustomList]} 移除的 CustomList 物件清單。
remove_temp_folder
remove_temp_folder()
刪除暫存資料夾及其子資料夾。
參數
不適用
property 結果
send_system_notification
send_system_notification(message, message_id='SDK_CUSTOM_NOTIFICATION')
傳送系統通知,並附上選用的訊息 ID。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| 訊息 | {string} | 通知訊息 | 不適用 | 不適用 |
| message_id | {string} | 通知訊息 ID | 不適用 | 不適用 |
send_system_notification_message
send_system_notification_message(message, message_id)
範例
結果行為
結果值
set_alert_sla
set_alert_sla(period_time, period_type, critical_period_time, critical_period_type, case_id, alert_identifier)
設定 case_id 的指定 alert_identifier 服務水準協議。使用這個 API 設定的服務水準協議,應優先於所有其他快訊服務水準協議類型。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| period_time | {int/str} | 代表總服務水準協議期間 | 不適用 | period_time > 0 |
| period_type | {str} | period_time 的時間單位, 以 ApiPeriodTypeEnum 表示 |
不適用 | 不適用 |
| critical_period_time | {int/str} | 代表重要服務水準協議期間 | 不適用 | critical_period_time >= 0 關鍵期 (以時間單位調整後) 應小於總期間 |
| critical_period_type | {str} | critical_period_time 的時間單位, 以 ApiPeriodTypeEnum 表示 |
不適用 | 不適用 |
| case_id | {long} | 案件 ID | 不適用 | 不適用 |
| alert_identifier | {str} | 快訊 ID | 不適用 | 不適用 |
set_case_sla
set_case_sla(period_time, period_type, critical_period_time, critical_period_type, case_id)
設定指定 case_id 的服務水準協議。使用這個 API 設定的服務水準協議,應優先於所有其他案件服務水準協議類型。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| period_time | {int/string} | 代表總服務水準協議期間 | 不適用 | period_time > 0 |
| period_type | {string} | period_time 的時間單位, 以 ApiPeriodTypeEnum 表示 |
不適用 | 無 |
| critical_period_time | {int/string} | 代表重要服務水準協議期間 | 不適用 | critical_period_time >= 0 關鍵期 (以時間單位調整後) 應小於總期間 |
| critical_period_type | {string} | critical_period_time 的時間單位, 以 ApiPeriodTypeEnum 表示 |
不適用 | 不適用 |
| case_id | {long} | 案件 ID | 234 | 不適用 |
update_alerts_additional_data
update_alerts_additional_data(case_id, alerts_additional_data)
更新快訊額外資料。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| case_id | {string} | 案件 ID | 234 | 不適用 |
| alerts_additional_data | {dict} | 快訊的其他資料 | 不適用 | 不適用 |
update_entities
update_entities(updated_entities)
這個函式會更新實體。
參數
| 參數名稱 | 參數類型 | 定義 | 可能的值 | 註解 |
|---|---|---|---|---|
| updated_entities | {[{string:string}]} | 不適用 | 不適用 | 不適用 |
傳回
NoneType
結果行為
如果所選快訊尚未存在,系統會使用範圍新增實體。
結果值
無