3.9. 管理审计日志记录


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

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

注意

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

3.9.1. 独立服务器审计日志记录

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

<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

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

3.9.2. 受管域审计日志记录

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

<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.9.3. 启用管理审计日志记录

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

以下说明启用 NATIVEHTTP 审计日志记录。要配置 JMX 审计日志记录,请参阅启用 JMX 管理审计日志记录

要设置 syslog 审计日志记录,请参阅 向 syslog 服务器发送管理审计日志记录

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

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

/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

3.9.3.2. 启用受管域审计日志记录

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

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

/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

3.9.4. 启用 JMX 管理审计日志记录

JBoss EAP 预配置了 JMX 审计日志记录的文件处理程序,但这些日志默认是禁用的。启用审计日志记录的管理 CLI 命令取决于您作为单机服务器还是受管域运行。

要配置 NATIVEHTTP 审计日志记录,请参阅启用管理审计日志记录

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

可以使用以下命令为单机服务器启用 JMX 审计日志记录:

/subsystem=jmx/configuration=audit-log:add()
/subsystem=jmx/configuration=audit-log/handler=file:add()
Copy to Clipboard Toggle word wrap

这可启用 JMX 审计日志记录,然后使用定义 的文件处理程序 将这些日志写入 EAP_HOME/standalone/data/audit-log.log

3.9.4.2. 启用受管域 JMX 审计日志记录

可以为受管域中的每个主机和配置文件启用 JMX 审计日志记录。

为主机启用 JMX 审计日志记录

  1. 在主机的 jmx 子系统中启用审计日志记录。

    /host=HOST_NAME/subsystem=jmx/configuration=audit-log:add()
    Copy to Clipboard Toggle word wrap
  2. 启用 jmx 子系统的审计日志记录后,可以使用以下命令为主机定义处理程序:

    /host=HOST_NAME/subsystem=jmx/configuration=audit-log/handler=host-file:add()
    Copy to Clipboard Toggle word wrap

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

为配置集启用 JMX 审计日志记录

  1. 在配置文件的 jmx 子系统中启用审计日志记录。

    /profile=PROFILE_NAME/subsystem=jmx/configuration=audit-log:add()
    Copy to Clipboard Toggle word wrap
  2. 启用 jmx 子系统的审计日志记录后,可以使用以下命令为配置集定义处理程序:

    /profile=PROFILE_NAME/subsystem=jmx/configuration=audit-log/handler=server-file:add()
    Copy to Clipboard Toggle word wrap

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

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

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

先决条件

  • JBoss EAP 正在运行。

流程

  1. 添加 syslog 处理程序。

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

    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.9.6. 读取审计日志条目

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

注意

不建议使用 文本编辑器 查看日志文件,因为有些可能会防止将其他日志条目写入到日志文件中。

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

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

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