审计日志¶
概述¶
审计日志(Audit Log)模块用于记录系统中用户的关键操作轨迹。它能够帮助管理员进行安全审计、故障排查和合规检查,详细记录“谁”在“什么时间”对“什么资源”执行了“什么操作”。
审计记录长久保存,主要针对管理端(Console)的系统配置、权限划分及资源修改行为。
覆盖场景¶
当前系统会在以下操作发生时自动记录审计日志:
-
用户与权限管理:
- 创建、更新、删除用户
- 创建、更新、删除角色
- 为用户分配角色
-
资源与文件管理:
- 决策组件(决策表、规则集、决策树等)的创建、保存与修改
- 变量库与参数的修改
-
上线与发布过程:
- 提交上线审批
- 审核通过 / 拒绝
- 执行发布上线操作
功能特性¶
在管理控制台中进入 系统管理 → 审计日志 页面(需要有 menu:system:audit 权限),可以查看按时间倒序排列的全部审计记录。
记录包含的关键信息:
- 操作人:执行操作的用户账号 / 角色信息
- 操作类型:如
CREATE、UPDATE、DELETE、APPROVE等 - 资源对象:被操作的资源标识(如知识包名称、文件路径、用户名等)
- 操作详情:变更的具体描述(如审批意见、新增的资源名称等)
- 时间与 IP:执行操作的具体时间戳及客户端 IP 地址
前端提供基础的日志展示及翻页功能,支持按照操作人、操作时间段等维度进行快速检索和过滤定位。
数据存储层设计¶
审计日志底层持久化至 ruleuler_audit_log 库表。系统内针对 Controller 层面通过统一的无侵入式切面拦截或关键节点显式调用 AuditLogService 来完成异步日志入库,不影响主干业务的响应性能。