跳转至

如何保证接口安全

一、HTTPS

传输层加密,防窃听、防篡改。

二、鉴权

  • JWT:无状态。
  • OAuth2:第三方授权。

三、防重放

请求带 timestamp + nonce:

timestamp: 当前时间戳
nonce: 随机串
sign: MD5(参数 + timestamp + nonce + secret)

服务端校验: - 时间戳在 5 分钟内。 - nonce 没用过(Redis 存)。

四、防篡改

参数签名,服务端重新算 sign 对比。

五、限流

  • 网关限流。
  • 令牌桶。

六、其他

  • 参数校验。
  • SQL 注入过滤。
  • XSS 过滤。
  • 越权检查。

七、加密策略选择

场景 策略
传输 HTTPS
鉴权 JWT/OAuth2
防重放 timestamp + nonce + sign
敏感数据 AES/RSA

一句话

HTTPS + 鉴权 + 签名 + 限流 + 防重放 = 接口安全。