1.8 KiB
1.8 KiB
Common Audit 模块指引
数据库访问与中文注释约束
- 强制遵守根
../AGENTS.md的“数据库访问与中文代码注释”全部规则:正常业务访问统一为Controller → Service → Repository → Mapper,不得省略 Repository 或跨层直调;生产 SQL 由 Mapper 执行,Repository 不得直接使用 JdbcTemplate 或原生 JDBC。非 HTTP 入口从 Service 进入;无数据库模块不引入数据库访问。 - 每个手写方法及构造器须有简短中文说明;核心业务规则、复杂 SQL、事务、锁、幂等、并发及失败处理须补充适量中文注释,重点说明原因和边界。新增、修改方法立即执行,触及的存量代码同步整改。
职责边界
- 负责业务审计事件采集、注解切面、敏感字段脱敏以及日志/HTTP 输出。
- 审计记录持久化属于
audit-service/;本模块不依赖具体业务 Entity 或数据库。
快速索引
| 功能 | 入口 |
|---|---|
| 审计注解与切面 | src/main/java/com/baiyue/common/audit/BusinessAudit.java、BusinessAuditAspect.java |
| 事件模型 | AuditEvent.java |
| 输出抽象与实现 | AuditSink.java、LoggingAuditSink.java、HttpAuditSink.java |
| 敏感数据脱敏 | SensitiveDataSanitizer.java |
baiyue.audit 配置 |
AuditProperties.java |
| 自动配置 | BaiyueAuditAutoConfiguration.java 与 src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports |
修改与验证
- 新增审计字段时先确认不会泄露密码、令牌、证件或客户敏感数据,并检查
audit-service接收 DTO。 - 审计失败不应破坏核心业务;调整输出策略时保留超时、关闭开关和安全降级。
- 从父目录运行
mvn -pl common-audit -am test,并按影响追加验证audit-service。