14.3. 审计日志
审计日志可让您跟踪对数据网格环境的更改,以便您了解何时发生变化以及哪些用户进行更改。启用并配置审计日志记录,以记录服务器配置事件和管理操作。
org.infinispan.AUDIT
-
将安全审计消息写入
$RHDG_HOME/server/log
目录中的audit.log
文件的日志记录类别。
14.3.1. 启用审计日志记录
要记录安全审计消息,您需要在 log4j2.xml
中启用日志记录类别。
流程
-
使用任何文本编辑器打开
$RHDG_HOME/server/conf/log4j2.xml
。 -
将
org.infinispan.AUDIT
日志类别的级别更改为INFO
。 -
保存并关闭
log4j2.xml
。
<!-- Set to INFO to enable audit logging --> <Logger name="org.infinispan.AUDIT" additivity="false" level="INFO"> <AppenderRef ref="AUDIT-FILE"/> </Logger>
14.3.2. 配置审计日志记录应用程序
Apache Log4j 提供了不同的附加程序,您可以使用它们将审计消息发送到默认日志文件以外的目的地。例如,如果要将审计日志发送到 syslog 守护进程、JDBC 数据库或 Apache Kafka 服务器,您可以在 log4j2.xml
中配置附加程序。
流程
-
使用任何文本编辑器打开
$RHDG_HOME/server/conf/log4j2.xml
。 注释或删除默认的
AUDIT-FILE
滚动文件附加程序。<!--RollingFile name="AUDIT-FILE" ... </RollingFile-->
为审计消息添加所需的日志记录附加程序。
例如,您可以为 Kafka 服务器添加日志附加程序,如下所示:
<Kafka name="AUDIT-KAFKA" topic="audit"> <PatternLayout pattern="%date %message"/> <Property name="bootstrap.servers">localhost:9092</Property> </Kafka>
-
保存并关闭
log4j2.xml
。
其他资源
14.3.3. 使用自定义审计日志记录实施
如果配置 Log4j appenders 不满足您的需要,您可以创建 org.infinispan.security.AuditLogger
API 的自定义实现。
前提条件
-
根据需要实施
org.infinispan.security.AuditLogger
,并将它打包在 JAR 文件中。
流程
-
将您的 JAR 添加到 Data Grid Server 安装的
server/lib
目录中。 指定自定义审计日志记录器的完全限定类名称,作为缓存容器安全配置中
authorization
元素的audit-logger
属性的值。例如,以下配置将
my.package.CustomAuditLogger
定义为日志记录审计消息的类:<infinispan> <cache-container> <security> <authorization audit-logger="my.package.CustomAuditLogger"/> </security> </cache-container> </infinispan>