【问题标题】:IP whitelisting in bucket4jbucket4j 中的 IP 白名单
【发布时间】:2022-08-22 10:43:56
【问题描述】:

我在我的spring boot应用程序中使用bucket4j来防止DOS攻击,如果一个ip在一分钟内发出大量请求,它就会被阻止。我为此使用以下配置

bucket4j.enabled=true
bucket4j.filters[0].cache-name=buckets
bucket4j.filters[0].filter-method=servlet
bucket4j.filters[0].http-response-body={ \"message\": \"Too many requests\" }
bucket4j.filters[0].url=.*
bucket4j.filters[0].strategy=first
bucket4j.filters[0].rate-limits[0].bandwidths[0].capacity=20
bucket4j.filters[0].rate-limits[0].bandwidths[0].time=1
bucket4j.filters[0].rate-limits[0].bandwidths[0].unit=minutes

但是有一个 IP 实际上应该进行很多调用。我怎样才能将该IP列入白名单?

    标签: spring-boot denial-of-service bucket4j


    【解决方案1】:

    此链接中有将bean方法参数传递给的示例特性https://github.com/MarcGiffing/bucket4j-spring-boot-starter

    它会是这样的:

    bucket4j.filters[0].rate-limits[0].skip-condition=@securityService.isWhiteList()
    

    【讨论】:

      猜你喜欢
      • 2022-08-16
      • 2021-05-02
      • 2012-12-04
      • 2015-06-06
      • 2020-04-13
      • 2014-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多