原英文版地址: https://www.elastic.co/guide/en/elasticsearch/reference/7.7/auditing-settings.html, 原文档版权归 www.elastic.co 所有
本地英文版地址: ../en/auditing-settings.html

审计安全设置

在集群中的每个节点的elasticsearch.yml配置文件中配置安全审计设置。 更多信息参考 启用审计日志.

一般审计设置

xpack.security.audit.enabled
设置为 true 以在节点上启用审计。默认为 false。 这将在每一个节点上将审计事件写入到一个独立的文件,文件名为 <clustername>_audit.json

审计事件设置

可以使用以下设置来控制事件和有关记录内容的其他信息:

xpack.security.audit.logfile.events.include
指定要包含在审计输出中的事件。默认值为:access_denied, access_granted, anonymous_access_denied, authentication_failed, connection_denied, tampered_request, run_as_denied, run_as_granted.
xpack.security.audit.logfile.events.exclude
从输出中排除指定的事件。默认情况下,不排除任何事件。
xpack.security.audit.logfile.events.emit_request_body

指定是否要在某些事件类型(比如 authentication_failed)上记录 REST 请求的 请求体(request body)。 默认为 false

审计时不执行任何数据过滤,因此在审计事件中包含请求体时,敏感数据可能会以纯文本形式进行审计。

本地节点信息设置

xpack.security.audit.logfile.emit_node_name
指定是否在每一个审计事件中包含 节点名称(node name) 字段。默认值为 false
xpack.security.audit.logfile.emit_node_host_address
指定是否在每一个审计事件中包含 节点的 IP 地址 字段。默认值为 false
xpack.security.audit.logfile.emit_node_host_name
指定是否在每一个审计事件中包含 节点的宿主机名称 字段。默认值为 false
xpack.security.audit.logfile.emit_node_id
指定是否在每一个审计事件中包含 节点id 字段。 这仅适用于新格式。也就是说,这个信息不会出现在 <clustername>_access.log 文件中。 不像 节点名称(node name) 的值可能会被管理员通过配置文件修改掉,节点id 在集群重新启动期间持续存在,管理员无法更改它。 默认为 true.

审计日志文件事件忽略策略

这些设置会影响忽略策略(ignore policies),这些策略支持细粒度控制哪些审计事件被打印到日志文件中。 所有具有相同策略名称的设置会组合成一个策略。 如果一个事件与特定策略的所有条件匹配,则将忽略该事件而不打印它。

xpack.security.audit.logfile.events.ignore_filters.<policy_name>.users
用户名或通配符的列表。指定的策略不会为匹配这些值的用户打印审计事件。
xpack.security.audit.logfile.events.ignore_filters.<policy_name>.realms
身份验证领域(authentication realm)的名称或通配符的列表。 指定的策略不会为匹配这些领域的用户打印审计事件。
xpack.security.audit.logfile.events.ignore_filters.<policy_name>.roles
角色名称或通配符的列表。指定的策略不会为匹配这些角色的用户打印审计事件。 如果用户有多个角色,有部分角色不在策略中,则该忽略策略涵盖该事件(译者注: 即该事件不会被忽略)
xpack.security.audit.logfile.events.ignore_filters.<policy_name>.indices
索引名称或通配符的列表。 指定的策略不会为匹配这些值的所有索引打印审计事件。 如果事件涉及多个索引,其中一些索引包括在策略中,则策略将涵盖此事件。