导出规则

编辑

将规则导出到 .ndjson 文件。以下配置项也包含在 .ndjson 文件中

  • 操作
  • 异常列表

您无法导出预构建规则,但可以在 https://github.com/elastic/detection-rules/tree/main/rules/ 获取。

规则操作和连接器包含在导出的文件中,但连接器的敏感信息(例如身份验证凭据)包含在内。导入检测规则后,您必须重新添加缺少的连接器详细信息。

您可以使用 Kibana 的 已保存对象 UI(堆栈管理Kibana已保存对象)或已保存对象 API(实验性)来 导出导入 导入检测规则之前所需的任何连接器。

同样,规则异常使用的任何值列表都不包含在规则导出或导入中。使用 管理值列表 UI(规则检测规则 (SIEM)管理值列表)分别导出和导入值列表。

请求 URL

编辑

POST <kibana 主机>:<端口>/api/detection_engine/rules/_export

URL 查询参数

编辑
名称 类型 描述 必需

exclude_export_details

布尔值

确定是否返回导出规则的摘要。

否,默认为 false

file_name

字符串

保存导出规则的文件名。

否,默认为 export.ndjson

当使用 cURL 将规则导出到文件时,使用 -O-J 选项将规则保存到 URL 中指定的文件名。

请求体

编辑

一个可选的 JSON objects 数组,包含要导出的规则的 rule_id 字段

名称 类型 描述 必需

objects

String[]

rule_id 字段数组。

否,未指定时导出所有规则。

示例请求

编辑

导出两条规则(不包含详细信息)并将它们保存到 exported_rules.ndjson 文件中

POST api/detection_engine/rules/_export?exclude_export_details=true&file_name=exported_rules.ndjson
{
  "objects": [
    {
      "rule_id":"343580b5-c811-447c-8d2d-2ccf052c6900"
    },
    {
      "rule_id":"2938c9fa-53eb-4c04-b79c-33cbf041b18d"
    }
  ]
}

响应代码

编辑
200
表示调用成功。

响应有效负载

编辑

包含返回规则的 .ndjson 文件。

文件中的每一行代表一个对象(规则、异常列表父容器或异常列表项),最后一行包含导出的摘要。

示例响应有效负载

{"id":"d4db8800-30df-11ec-88a5-fb21b48c9b4e","rule_id":"query-with-single-exception-list"[....]} // Rule
{"id":"cd62f410-30de-11ec-88a5-fb21b48c9b4e","list_id":"simple_list"[...]} // Exception list parent container
{"id":"e54ffbe0-30de-11ec-88a5-fb21b48c9b4e","item_id":"my-exception-item","list_id":"simple_list"[...]} // Exception list item
{"exported_rules_count":1,"missing_rules":[],"missing_rules_count":0,"exported_exception_list_count":1,"exported_exception_list_item_count":1,"missing_exception_list_item_count":0,"missing_exception_list_items":[],"missing_exception_lists":[],"missing_exception_lists_count":0} // Export summary