导出规则编辑

将规则导出到 .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 中指定的文件名。

请求正文编辑

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

名称 类型 描述 必需

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