API 滥用防护:限请求次数,还要限一次请求能花多少资源
针对导出、短信、图片处理和 AI 调用,建立并发、任务预算与第三方费用限制。
本文目录
低频请求也可能很昂贵
一条请求可能触发大批数据库查询、超大文件处理或按次付费的外部服务。OWASP API4 将不受限制的资源消耗列为 API 风险。固定带宽和业务流量不计量也不能限制数据库、短信或模型调用的开销,这些需要在应用与依赖服务中控制。
按资源类型定义上限
建议分别设置分页大小、上传体积、执行时间、并发任务、排队长度和下游调用预算。对导出类任务采用异步处理,并让取消操作真正停止后端工作。限制值应从正常业务样本推导,不给所有接口套用同一个数字。
身份额度与网络限流要配合
同一公司可能共享出口 IP,一个滥用者也可能更换多个地址。按账号、租户、API 密钥和操作类型设置额度,再结合网络行为检测。高成本操作还应验证对象权限与幂等性,避免合法登录后批量读取他人数据或重复触发付费任务。
告警要包含业务成本
观察第三方费用、队列等待、失败重试和单租户资源占比,并明确触发降级后的恢复方式。联调时验证超限返回清晰、正常租户仍可使用、重试不会成倍放大压力。边缘防护与应用预算一起落实,才不会把流量下降误判成风险消失。
