后端防接口被刷

2025-12-13 0 390

1)防火墙
防火墙也是互联网安全攻防中重要的屏障,我们通过配置访问规则,可以限制只有被允许的IP才可以进行访问。
防火墙还可以识别和阻止DDoS攻击,通过识别并过滤恶意流量请求,防火墙可以有效的防御,保护接口正常运行。

2)用户认证
在调用接口之后,需要对接口中的身份信息进行认证和授权,只有授权过的合法用户才可继续访问。
常用的有OAtuh2.0等标准协议,通过token的形式进行身份验证,确保用户已经登陆或者已经具备该接口的访问权限,从而限制接口的访问。
我们可以自定义一个注解,在注解上添加权限授权标识,并在网关上增加权限拦截器,对增加了该权限注解的接口进行权限验证,只有匹配该接口所需要的权限才可以访问。

3)访问频率
增加访问频率限制,限制同一个用户在一段时间内的请求接口次数。我们可以根据用户角色的不同设置不同的等级限制。
访问频率这块我们可以都适用动态配置的,可以考虑一下两点方向:
访问策略限制可以配置调整。
限制算法与业务影响最小,既能有效防止恶意请求,也不影响正常用户访问。

4)验证码
比如登陆时用的短信验证码,页面限制60秒发送一次,大大延长用户操作的时间,但是当用户刷新了页面,对于当前页面来说,用户还是可以继续点击发送短信验证码,所以服务端我们也要做访问限制。
当请求进来后,以用户手机号为key,判断最近发送验证码的时间,如果大于60s,就发送短信,反之拒绝。
服务端做限制,以手机号发送验证码举例,不仅要限制发送验证的频率,还要限制每天同一个手机号最多发送几次验证码。
以用户手机号以及当天日期为key,增加当天该手机号发送验证码次数,超过一定次数拒绝发送短信。

5)IP白名单和黑名单
对于信任的IP地址直接加入白名单,对于明确知道恶意请求的 IP,直接加入黑名单。(如何知道是恶意请求,就是下一个手段,监控)
白名单黑名单的配置我们可以使用配置中心,Nacos 或者 Apollo,这样当线上使用时可以动态的增加删除,使其动态生效。

6)监控
在系统中增加监控系统,对接口的请求记录保存日志,通过对日志进行分析,发现突发流量时使用限制访问频率或者封禁IP等手段,然后同步发送短信或者邮件提醒管理员。
监控的范围最好是覆盖广,相当于全接口的监控,然后是实时、准确,最好有可视化的监控报告,帮助管理员或者运维人员排查。

7)数据加密
为何能自动化的使用程序刷接口,就是因为通过各种手段破解了我们接口所需要的参数以及认证信息,那么我们对接口进行加密就可以增加这个过程的难度,让其再去破译该接口就变的没有那么容易。
加密有多种,首先可以数据加密,也就是传的参数,前后端约定加密算法。然后是使用HTTPS安全传输协议,对接口传输的数据进行加密,防止数据被中间人窃取篡改,保证接口安全。

8)用户行为分析
在监控系统的基础上,增加用户分析,对用户的特点行为进行分析,发现异常行为时作出相应的处理。但是需要确保不能影响到正常的用户,也不能使用单一的条件进行分析,需要多方位的,比如用户的登录设备、IP、时间点等。

补充知识:
接口的幂
在后端开发中,接口的“幂”并不是一个标准术语,因此可能需要一些上下文来准确理解您的问题。不过,如果这里的“幂”指的是接口的“幂等性”(Idempotency),那么这是一个非常重要的概念,特别是在设计RESTful API时。
幂等性意味着一个操作可以多次执行,而结果都相同,不会因为重复执行而产生额外的影响。换句话说,无论你调用一次还是多次相同的API请求,系统状态和响应都应该保持一致。这对于保证API的可靠性和避免因网络重传或用户误操作导致的不良后果至关重要。

具体到HTTP方法上:get, head , put, delete
方法通常是幂等的。
GET 请求用于获取资源,多次请求不会改变服务器状态。
HEAD 类似于 GET,但只返回头部信息,同样幂等。
PUT 请求用于替换已有资源或创建特定URI下的新资源(如果不存在),无论请求一次还是多次,最终服务器上的资源状态是一样的。
DELETE 请求用于删除资源,一旦资源被删除,再次发送同样的请求,服务器会确认资源已经删除,状态不变。

相比之下,POST 请求通常不是幂等的,因为它用于创建新的资源,每次请求都会导致新的资源被创建,产生不同的结果。

在设计API时,明确每个接口的幂等性对于客户端开发者来说非常重要,因为它影响着他们如何处理错误重试逻辑和其他异常情况。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/m0_62986746/article/details/139705394

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

左子网 编程相关 后端防接口被刷 https://www.zuozi.net/36636.html

常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、描述:源码描述(含标题)与实际源码不一致的(例:货不对板); 2、演示:有演示站时,与实际源码小于95%一致的(但描述中有”不保证完全一样、有变化的可能性”类似显著声明的除外); 3、发货:不发货可无理由退款; 4、安装:免费提供安装服务的源码但卖家不履行的; 5、收费:价格虚标,额外收取其他费用的(但描述中有显著声明或双方交易前有商定的除外); 6、其他:如质量方面的硬性常规问题BUG等。 注:经核实符合上述任一,均支持退款,但卖家予以积极解决问题则除外。
查看详情
  • 1、左子会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、左子无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在左子上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于左子介入快速处理。
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务