身份、签名与安全校验
已核对的源码入口
config/interceptor/InterceptorConfig.javaconfig/interceptor/TokenInterceptor.javaconfig/filter/SignFilter.javaconfig/BaseController.java
路径相对于 coinex-app/src/main/java/com/exch/app。
全局配置与例外
InterceptorConfig 注册 TokenInterceptor,配置覆盖 /**,同时明确排除若干路由;TokenInterceptor 内部还有心跳等放行和验签、Token 读取相关分支。因此不能简单写成“所有请求都必须登录并验签”。应以注册规则、方法分支和业务方法共同判断每个入口。
BaseController 有 getCurrentLoginUser 等公共能力,但公共基类存在不代表所有子方法都自动执行同样的业务权限检查。
SignFilter 的实际边界
已读取的 doFilter 会按 Content-Type 包装请求并继续过滤链,不能仅凭类名把它等同于完整验签实现。实际验签条件、排除项和参数处理需继续沿拦截器及其调用核对。
身份与业务权限分别验证
有效 Token 不直接证明用户可以提现、修改他人资料或操作指定商户。实际业务还需核对用户状态、商户范围、交易密码及适用验证码;见用户中心安全校验。外部回调通常有不同身份模型,不能照搬普通用户登录规则。
验证场景
缺失、过期或错误 Token,签名缺失与参数变化,排除路径边界,错误用户/商户,以及日志中的敏感参数。本文不公开签名密钥或会话凭证,也不声称已经完成渗透与全路径安全测试。