package com.vincent.rsf.httpaudit.service; import com.baomidou.mybatisplus.extension.service.IService; import com.vincent.rsf.httpaudit.entity.HttpAuditRule; import com.vincent.rsf.httpaudit.model.HttpAuditDecision; import javax.servlet.http.HttpServletRequest; /** * 审计规则:命中则记录(白名单模式) */ public interface HttpAuditRuleService extends IService { /** 是否应写入审计日志(whitelist-only=false 时恒为 true) */ boolean shouldAudit(HttpServletRequest request, String requestBody); /** 入站是否记及截断长度 */ HttpAuditDecision decideInbound(HttpServletRequest request, String requestBody); /** 出站 RestTemplate 是否记及截断长度;fullUrl 为完整请求 URL */ HttpAuditDecision decideOutbound(String fullUrl, String method, String requestBody); /** 重载规则缓存(保存/修改/删除后调用) */ void refreshCache(); }