Rails中是否有一种方法可以指定允许的最大内容长度,以使超过该值的请求被立即拒绝?
我的应用程序上有一个登录表单,这是未经身份验证的用户可以使用的唯一POST。这已被确定为缓慢的POST DoS攻击的潜在漏洞。缓解措施之一是限制允许的请求大小。
我似乎找不到旋转的旋钮,如果内容长度超过特定值,该旋钮将允许我自动拒绝请求。
如果这会影响答案,我们正在使用Puma Web服务器。
答案 0 :(得分:0)
Puma实际上有两个参数,线程数和工人数。如果我们稍微更改默认的 puma.rb ,它将看起来像这样:
workers Integer(ENV['WORKERS_NUMBER'] || 1)
max_threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 1)
min_threads_count = max_threads_count
threads min_threads_count, max_threads_count