3.8. 管理审计日志记录


您可以为管理接口启用审计日志记录,这将记录使用管理控制台、管理 CLI 或使用管理 API 的自定义应用执行的所有操作。审计日志条目以 JSON 格式存储。默认情况下禁用审计日志记录。

您可以将审计日志记录配置为输出到 文件或 syslog 服务器

注意

无法登录和注销事件,因为 JBoss EAP 中没有经过身份验证的会话。相反,当从用户收到操作时,会记录审计消息。

独立服务器审计日志记录

虽然默认禁用,但默认的审计日志记录配置写入文件。

<audit-log>
    <formatters>
        <json-formatter name="json-formatter"/>
    </formatters>
    <handlers>
        <file-handler name="file" formatter="json-formatter" path="audit-log.log" relative-to="jboss.server.data.dir"/>
    </handlers>
    <logger log-boot="true" log-read-only="false" enabled="false">
        <handlers>
            <handler name="file"/>
        </handlers>
    </logger>
</audit-log>
Copy to Clipboard Toggle word wrap

可以使用以下管理 CLI 命令读取此配置:

/core-service=management/access=audit:read-resource(recursive=true)
Copy to Clipboard Toggle word wrap

请参阅 启用审计日志记录,以便为独立服务器启用审计日志记录。

受管域审计日志记录

虽然默认禁用,但默认的审计日志记录配置为每个主机和每台服务器写入一个文件。

<audit-log>
    <formatters>
        <json-formatter name="json-formatter"/>
    </formatters>
    <handlers>
        <file-handler name="host-file" formatter="json-formatter" relative-to="jboss.domain.data.dir" path="audit-log.log"/>
        <file-handler name="server-file" formatter="json-formatter" relative-to="jboss.server.data.dir" path="audit-log.log"/>
    </handlers>
    <logger log-boot="true" log-read-only="false" enabled="false">
        <handlers>
            <handler name="host-file"/>
        </handlers>
    </logger>
    <server-logger log-boot="true" log-read-only="false" enabled="false">
        <handlers>
            <handler name="server-file"/>
        </handlers>
    </server-logger>
</audit-log>
Copy to Clipboard Toggle word wrap

可以使用以下管理 CLI 命令读取此配置:

/host=HOST_NAME/core-service=management/access=audit:read-resource(recursive=true)
Copy to Clipboard Toggle word wrap

请参阅 启用审计日志记录,以便为受管域启用审计日志记录。

3.8.1. 启用管理审计日志记录

JBoss EAP 预配置了用于审计日志记录的文件处理程序,但审计日志记录默认为禁用。启用审计日志记录的管理 CLI 命令取决于您是作为独立服务器还是在受管域中运行。请参阅 文件 处理程序属性 的管理审计日志记录属性。

要设置 syslog 审计日志记录,请参阅将 管理审计日志记录设置为 Syslog 服务器

启用独立服务器审计日志记录

可以使用以下命令启用审计日志记录。

/core-service=management/access=audit/logger=audit-log:write-attribute(name=enabled,value=true)
Copy to Clipboard Toggle word wrap

默认情况下,这将将审计日志写入 EAP_HOME/standalone/data/audit-log.log

启用受管域审计日志记录

受管域的默认审计日志记录配置预先配置为为每个主机和每台服务器编写审计日志。

可以通过以下命令启用每个主机的审计日志记录。

/host=HOST_NAME/core-service=management/access=audit/logger=audit-log:write-attribute(name=enabled,value=true)
Copy to Clipboard Toggle word wrap

默认情况下,这将将审计日志写入 EAP_HOME/domain/data/audit-log.log

可以使用以下命令启用每台服务器的审计日志记录。

/host=HOST_NAME/core-service=management/access=audit/server-logger=audit-log:write-attribute(name=enabled,value=true)
Copy to Clipboard Toggle word wrap

默认情况下,这将将审计日志写入 EAP_HOME/domain/servers/SERVER_NAME/data/audit-log.log

syslog 处理程序指定审计日志条目发送到 syslog 服务器的参数,特别是 syslog 服务器的主机名以及 syslog 服务器侦听的端口。将审计日志记录发送到 syslog 服务器可提供比登录到本地文件或本地 syslog 服务器更多的安全选项。可以定义多个 syslog 处理程序,并同时处于活动状态。

默认情况下,审计日志记录已预先配置为在启用时输出到文件。使用以下步骤为 syslog 服务器设置并启用审计日志记录。请参阅 syslog handler 属性 的管理审计日志记录属性。

  1. 添加 syslog 处理程序。

    创建 syslog 处理程序,指定 syslog 服务器的主机和端口。在受管域中,您必须在 /host=HOST_NAME 前使用 /core-service 命令。

    batch
    /core-service=management/access=audit/syslog-handler=SYSLOG_HANDLER_NAME:add(formatter=json-formatter)
    /core-service=management/access=audit/syslog-handler=SYSLOG_HANDLER_NAME/protocol=udp:add(host=HOST_NAME,port=PORT)
    run-batch
    Copy to Clipboard Toggle word wrap
    注意

    要传递的参数因指定的协议不同。

    要将处理器配置为使用 TLS 与 syslog 服务器安全通信,还必须配置身份验证,例如:

    /core-service=management/access=audit/syslog-handler=SYSLOG_HANDLER_NAME/protocol=tls/authentication=truststore:add(keystore-path=PATH_TO_TRUSTSTORE,keystore-password=TRUSTSTORE_PASSWORD)
    Copy to Clipboard Toggle word wrap
  2. 添加对 syslog 处理程序的引用。

    在受管域中,您必须在此命令前使用 /host=HOST_NAME

    /core-service=management/access=audit/logger=audit-log/handler=SYSLOG_HANDLER_NAME:add
    Copy to Clipboard Toggle word wrap
  3. 启用审计日志记录。

    请参阅 启用管理 审计日志记录来启用审计日志记录。

重要

除非操作系统中启用了日志记录功能,否则启用审计日志记录到 JBoss EAP 中的 syslog 服务器将无法正常工作。

有关 Red Hat Enterprise Linux 中的 rsyslog 配置的更多信息,请参阅 Red Hat Enterprise Linux 系统管理员指南中的 Rsyslog 基本配置 一节,网址为 https://access.redhat.com/documentation/en/red-hat-enterprise-linux/

3.8.3. 阅读审计日志条目

审计日志条目输出到文件最好使用文本查看器器,而这些输出到 syslog 服务器则最好使用 syslog viewer 应用来查看。

注意

不建议使用 文本编辑器 来查看日志文件,因为有些情况可能会阻止将进一步的日志条目写入到日志文件中。

审计日志条目以 JSON 格式存储。每个日志条目都以可选时间戳开头,后跟下表中的字段。

Expand
表 3.4. 管理审计日志字段
字段名称描述

access

这可以具有以下值之一:

  • NATIVE - 操作通过原生管理接口。
  • HTTP - 操作通过域 HTTP 接口。
  • JMX - 操作通过 jmx 子系统进行。

Boot (引导)

如果操作在启动过程中执行,则为 true,如果它在服务器启动和运行后执行,则为 false

domainUUID

一个 ID,用于将所有操作链接在一起,因为它们从域控制器传播到其服务器、从属主机控制器和从属主机控制器服务器。

ops

正在执行的操作。这是序列化为 JSON 的操作列表。在引导时,这是由于解析 XML 产生的操作。引导后,列表通常包含一个条目。

r/o

如果操作不会更改管理模型,则值为 true,如果操作没有修改,则为 false

remote-address

执行此操作的客户端的地址。

success

如果操作成功,则值为 true,如果它被回滚,则为 false

type

这可以具有值 core,即管理操作或 jmx (代表它来自 jmx 子系统)。

user

已验证用户的用户名。如果操作在与正在运行的服务器相同的机器上使用管理 CLI,则使用特殊用户 $local

version

JBoss EAP 实例的版本号。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat