about summary refs log tree commit diff
path: root/config/initializers/rack_attack.rb
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2019-04-07 04:26:43 +0200
committerGitHub <noreply@github.com>2019-04-07 04:26:43 +0200
commit0e8819f0e8729cda54231ed7a76dd10eb2083bdf (patch)
tree7b2e391e7a81ab1b1a29dbd367c5fc9fbb5ad447 /config/initializers/rack_attack.rb
parent6a0cd366ef339741fd24021d330dd4b44cfa6f8d (diff)
Add rate limit for media proxy requests (#10490)
30 per 30 minutes, like media uploads
Diffstat (limited to 'config/initializers/rack_attack.rb')
-rw-r--r--config/initializers/rack_attack.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/config/initializers/rack_attack.rb b/config/initializers/rack_attack.rb
index 28201cc64..ae3eede66 100644
--- a/config/initializers/rack_attack.rb
+++ b/config/initializers/rack_attack.rb
@@ -57,6 +57,10 @@ class Rack::Attack
     req.authenticated_user_id if req.post? && req.path.start_with?('/api/v1/media')
   end
 
+  throttle('throttle_media_proxy', limit: 30, period: 30.minutes) do |req|
+    req.ip if req.path.start_with?('/media_proxy')
+  end
+
   throttle('throttle_api_sign_up', limit: 5, period: 30.minutes) do |req|
     req.ip if req.post? && req.path == '/api/v1/accounts'
   end