检测需求
Elastic Stack 无服务器安全性
要使用检测功能,您首先需要配置一些设置。您还需要相应的Elastic Stack 订阅或无服务器项目层级,以便在生成检测告警时发送通知。此外,还有一些高级设置用于配置 Kibana 值列表上传限制。
对于自管理型 Elastic Stack 部署,其中几个步骤是必须的。如果您使用的是 Elastic Cloud 部署,则只需启用检测。
Elastic Stack
这些步骤仅适用于自管理型部署
必须配置 HTTPS 以进行 Elasticsearch 和 Kibana 之间的通信。
在
elasticsearch.yml
配置文件中,将xpack.security.enabled
设置为true
。有关更多信息,请参阅 配置 Elasticsearch 和 Elasticsearch 中的安全设置。在
kibana.yml
中,添加xpack.encryptedSavedObjects.encryptionKey
设置,并赋予其至少包含 32 个字符的字母数字值。例如xpack.encryptedSavedObjects.encryptionKey: 'fhjskloppd678ehkdfdlliverpoolfcr'
更改 xpack.encryptedSavedObjects.encryptionKey
值并重新启动 Kibana 后,您必须重新启动所有检测规则。
要使用“检测”功能,必须启用它,您的角色必须有权访问规则和告警,并且您的 Kibana 空间必须具有数据视图管理 功能可见性。如果您的角色不具备启用此功能所需的集群和索引权限,您可以请求具有这些权限的人访问您的 Kibana 空间,这将为您打开此功能。
有关使用机器学习作业和规则的说明,请参阅机器学习作业和规则要求。
下表描述了访问“检测”功能(包括规则和告警)所需的权限。有关 Kibana 权限的更多信息,请参阅基于用户权限的功能访问。
操作 | 集群权限 | 索引权限 | Kibana 权限 |
---|---|---|---|
在您的空间中启用检测 | 管理 |
以下系统索引和数据流的 manage 、write 、read 和 view_index_metadata ,其中 <space-id> 是空间名称- .alerts-security.alerts-<space-id> - .siem-signals-<space-id> 1- .lists-<space-id> - .items-<space-id> 1 注意:如果您要升级到 Elastic Stack 8.0.0 或更高版本,则用户应具有 .alerts-security.alerts-<space-id> 和 .siem-signals-<space-id> 索引的权限。 如果您是新安装 Elastic Stack,则用户不需要 .siem-signals-<space-id> 索引的权限。 |
Security 功能的 全部 |
在所有空间中启用检测 注意:要启用检测,请访问每个空间的“规则和告警”页面。 |
管理 |
以下系统索引和数据流的 manage 、write 、read 和 view_index_metadata - .alerts-security.alerts-<space-id> - .siem-signals-<space-id> 1- .lists-<space-id> - .items-<space-id> 1 注意:如果您要升级到 Elastic Stack 8.0.0 或更高版本,则用户应具有 .alerts-security.alerts-<space-id> 和 .siem-signals-<space-id> 索引的权限。 如果您是新安装 Elastic Stack,则用户不需要 .siem-signals-<space-id> 索引的权限。 |
Security 功能的 全部 |
预览规则 | 不适用 | 以下索引的 read - .preview.alerts-security.alerts-<space-id> - .internal.preview.alerts-security.alerts-<space-id>-* |
Security 功能的 全部 |
管理规则 | 不适用 | 以下系统索引和数据流的 manage 、write 、read 和 view_index_metadata ,其中 <space-id> 是空间名称- .alerts-security.alerts-<space-id> - .siem-signals-<space-id> 1- .lists-<space-id> - .items-<space-id> 1 注意:如果您要升级到 Elastic Stack 8.0.0 或更高版本,则用户应具有 .alerts-security.alerts-<space-id> 和 .siem-signals-<space-id> 索引的权限。 如果您是新安装 Elastic Stack,则用户不需要 .siem-signals-<space-id> 索引的权限。 |
Security 功能的 全部 注意: 您需要额外的 操作和连接器 功能权限(管理 → 操作和连接器)才能管理具有操作和连接器的规则- 要提供对规则操作和连接器的完全访问权限,请授予您的角色 全部 权限。使用 读取 权限,您可以编辑规则操作,但管理连接器的能力有限。 例如,读取 权限允许您从规则添加或删除现有连接器,但不允许您创建新连接器。- 要导入具有操作的规则,您至少需要 操作和连接器 功能的 读取 权限。 要覆盖或添加新连接器,您需要 操作和连接器 功能的 全部 权限。 要导入没有操作的规则,您不需要 操作和连接器 权限。 |
管理告警 注意:允许您管理告警,但不能修改规则。 |
不适用 | 以下系统索引和数据流的 maintenance 、write 、read 和 view_index_metadata ,其中 <space-id> 是空间名称- .alerts-security.alerts-<space-id> - .internal.alerts-security.alerts-<space-id>-* - .siem-signals-<space-id> 1- .lists-<space-id> - .items-<space-id> 1 注意:如果您要升级到 Elastic Stack 8.0.0 或更高版本,则用户应具有 .alerts-security.alerts-<space-id> 和 .siem-signals-<space-id> 索引的权限。 如果您是新安装 Elastic Stack,则用户不需要 .siem-signals-<space-id> 索引的权限。 |
Security 功能的 读取 |
在您的空间中创建 .lists 和 .items 数据流注意:要启动创建数据流的过程,您必须访问每个相应空间的“规则”页面。 |
管理 |
以下数据流的 manage 、write 、read 和 view_index_metadata ,其中 <space-id> 是空间名称- .lists-<space-id> - .items-<space-id> |
Security 和 已保存对象管理 功能的 全部 |
Elastic Stack
规则(包括所有后台检测及其生成的操作)是使用与上次编辑规则的用户相关联的 API 密钥进行授权的。 在创建或修改规则时,会为该用户生成一个 API 密钥,捕获其权限的快照。 然后,API 密钥用于运行与规则关联的所有后台任务,包括检测检查和执行操作。
如果规则需要某些权限才能运行,例如索引权限,请记住,如果一个没有这些权限的用户更新了规则,则该规则将不再起作用。
Elastic Stack
您可以设置字节数和缓冲区大小限制,用于将 值列表 上传到 Elastic Security。
要设置值
打开
kibana.yml
配置文件 或编辑您的 Kibana 云实例。添加以下任何设置及其所需的值
xpack.lists.maxImportPayloadBytes
:设置允许上传 Elastic Security 值列表的字节数(默认为9000000
,最大值为100000000
)。 对于每 10 兆字节,建议为 Kibana 预留额外的 1 千兆字节 RAM。例如,在具有 2 千兆字节 RAM 的 Kibana 实例上,您可以将此值设置为高达 20000000(20 兆字节)。
xpack.lists.importBufferSize
:设置用于上传 Elastic Security 值列表的缓冲区大小(默认为1000
)。 如果您在上传值列表时遇到上传速度慢或内存使用量大于预期,请更改该值。 设置为较高的值可以提高吞吐量,但会占用更多的 Kibana 内存;设置为较低的值可以降低吞吐量并减少内存使用量。