本文目录#

常见威胁#

Spring Cloud Gateway 作为入口层,需要抵御路径穿越、越权访问、熔断绕过等风险。加固措施包括统一认证、速率限制、跨域控制与熔断保护。

加固策略#

  • 统一鉴权:集成 Spring Security + OAuth2 Resource Server,对所有路由指定 SecurityWebFilterChain
  • 速率限制:使用 RequestRateLimiter 过滤器,结合 Redis 实现令牌桶:
1
2
3
4
5
filters:
- name: RequestRateLimiter
args:
redis-rate-limiter.replenishRate: 100
redis-rate-limiter.burstCapacity: 200
  • 跨域控制:配置 globalcors 严格限定 Source;
  • 敏感头部保护default-filters: - RemoveRequestHeader=Cookie,避免跨域攻击利用旧 Cookie;
  • 熔断与回退CircuitBreaker 过滤器,结合 Resilience4j;
  • 日志脱敏:自定义 GlobalFilter 对 Authorization、个人信息字段进行掩码。

监控与告警#

  • Micrometer 指标 spring.cloud.gateway.requests
  • 结合 Prometheus 报告状态码分布、限流触发次数;
  • 使用 Logback 的 JSON Encoder 将请求 ID、用户 ID、Trace ID 注入日志。

自检清单#

  • 是否统一开启鉴权并对静态资源做白名单控制?
  • 是否为敏感接口配置限流与熔断?
  • 是否建立日志脱敏与审计策略?

参考资料#


本作品系原创,采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,转载请注明出处。