• 一次非核心接口(信息提示类)被刷引发的思考


    自从上次接入钉钉监控后。今天早上起来发现测试环境 公告信息接口 凌晨3点100多条NPE告警~

    第一个反应接口被异常访问:这个接口没有定时任务等任何调用的可能~

    果然查看ZIPKIN发现了类似如下的请求:

    确定问题后,查看代码逻辑,果然该服务的所有接口都没有进行auth2校验,但是业务需要部分接口不能权限校验(例如:不登录就访问) 

    解决步骤:

      1、无须暴露的接口增加auth2校验

      2、日志中增加IP地址的打印,方便查看日志时候显示请求来源

    反思:

     项目中由于业务需要(不登录就访问)直接访问的接口,如何进行有效控制?

     1、调用方增加签名等合法性校验(本质说和auth2一种方式)

          优点:安全性高

          缺点:简单接口确增加了调用端和接收端交互的复杂性

     2、网关增加请求控制(IP的黑白名单。IP访问次数等)

         优点:统一的处理,针对业务更灵活可配置~

         缺点:实现更复杂

    那么网关中IP访问限制和黑白名单如何做,需要解决以下几个问题:

    1、如何识别正常访问和异常访问?(一段时间同一接口访问次数太多?高峰期和低峰期是否不同?

    2、IP访问异常后拒绝策略是什么?(一段时间访问访问异常接口不能访问?高峰期和低峰期是否不同?

    3、是否不同业务的识别方法和拒绝策略不一样?(有些接口访问频率高,有些访问频率低?

    4、有些业务是否之后IP在白名单中才能访问?(只对第三方提供的接口?

    5、IP访问异常的通知?(请求被识别为异常是否通知到服务维护人员?)

  • 相关阅读:
    【转】BP神经网络
    【转】Matlab的regionprops详解
    【转】本人常用资源整理(ing...)
    【转】LDA-linear discriminant analysis
    [转]推荐几个机器学习算法及应用领域相关的中国大牛:
    【转】机器学习资料推荐
    《转贴》机器学习 机器视觉 图像处理 牛人牛站
    [转]LLE
    UVA10651
    UVA10051
  • 原文地址:https://www.cnblogs.com/mxmbk/p/9569438.html
Copyright © 2020-2023  润新知