Steve Hodgkiss
93421efa5a
Tidy up defaults. We don't need to use ||= because this runs when the class gets loaded, and we won't have user supplied defaults yet.
2014-04-02 17:12:28 +11:00
Steve Hodgkiss
332dd4ff9e
Delegate to class methods with forwardable
2014-04-02 17:08:46 +11:00
Steve Hodgkiss
c3a077442a
Make Rack::Attack a class and Rack::Attack.new return an instance of that class, rather than Rack::Attack.
2014-03-28 14:53:51 +11:00
Carsten Zimmermann
1095f85242
Change response body to 'Forbidden'
2014-02-06 23:29:44 +01:00
Carsten Zimmermann
97a43f7e66
Return 403 Forbidden instead of 401
...
401 Unauthorized suggests that the requests can be
retried with appropriate credentials. 403 explicitly
states that the request should not be repeated.
See #41
2014-02-06 21:32:51 +01:00
Jordan Moncharmont
ef59c5182a
Allow2Ban
...
An alternate to fail2ban that allows clients until they hit the
thresholds, then blocks them. Think of it like a throttle where you can
block for more than one period.
2013-09-27 17:18:52 -07:00
Alex Volkovitsky & Sachin Maharjan
cfbee2c552
Use correct HTTP status codes for blackist and throttle
2013-06-28 10:55:28 -07:00
madlep
3f1c98a868
Fail2Ban helper
...
based on gist from @ktheory https://gist.github.com/ktheory/5723534
Modified slightly to use fail2ban `filter` terminology to simplify
Rack::Attack initializer configuration (only one block is requred for
this approach instead of 2)
2013-06-12 15:51:13 +10:00
madlep
6c259ea9be
delegate Redis custom logic to StoreProxy
...
this removes ugly `if redis blah` code from cache
2013-06-12 15:03:39 +10:00
Aaron Suggs
917d47758e
Add newlines to default responses
2013-03-04 21:06:15 -05:00
Aaron Suggs
27a13f6971
Clarify algorithm
2013-01-17 12:06:16 -05:00
Aaron Suggs
0ca7b8cfac
whitespace
2013-01-17 12:06:16 -05:00
Aaron Suggs
b577dae1c0
use each_value instead of each
2013-01-11 14:32:20 -05:00
Aaron Suggs
80367e1e4a
Add Rack::Attack.track.
...
track will fire notifications, but not alter request processing
2013-01-10 19:02:49 -05:00
Aaron Suggs
eeb238b78d
Use autoload instead of require
2013-01-10 18:36:31 -05:00
Aaron Suggs
6784f21612
Better cache interface
2012-08-06 14:16:08 -04:00
Aaron Suggs
9c4dccac48
Make cache & notifier attr_accessors
...
Easier config for non-rails apps
2012-08-06 12:17:31 -04:00
Aaron Suggs
8e59e84e00
Response header values must be strings
2012-08-02 12:15:16 -04:00
Aaron Suggs
ccdc1f993a
Change instrumentation API for simpler notifications
2012-07-30 15:44:22 -04:00
Aaron Suggs
61a046a203
Cleanup instrumentation interface
2012-07-30 09:34:30 -04:00
Aaron Suggs
cf49b00c00
DRY up initial values
2012-07-28 22:09:56 -04:00
Aaron Suggs
c90a0182eb
Allow custom responses based on env
2012-07-28 19:51:24 -04:00
Aaron Suggs
dc2e402812
Initial working version
2012-07-27 17:40:11 -04:00
Aaron Suggs
e166e87fb9
Add throttle support
2012-07-27 17:22:49 -04:00
Aaron Suggs
9284a08cc3
Whitelists support
2012-07-26 17:29:09 -04:00
Aaron Suggs
7fab5df499
WIP
2012-07-24 19:59:46 -04:00
Aaron Suggs
140ea86b7c
Initial commit
2012-07-24 19:40:55 -04:00