blob: 9523d23a3ad9e91c31e8c571fbb2d5f942220ac2 [file] [log] [blame]
Jake Slack03928ae2014-05-13 18:41:56 -07001DoSFilter: Limit exposure to abuse from request flooding, whether malicious, or as a result of a misconfigured client.
2maxRequestsPerSec: maximum number of requests from a connection per second. Requests in excess of this are first delayed, then throttled.
3delayMs: delay (in milliseconds) that is applied to all requests over the rate limit, before they are considered at all, 0 - no delay, -1 - reject request.
4maxWaitMs: maximum amount of time (in milliseconds) the filter will blocking wait for the throttle semaphore.
5throttledRequests: number of requests over the rate limit able to be considered at once.
6throttleMs: amount of time (in milliseconds) to async wait for semaphore.
7maxRequestMs: maximum amount of time (in milliseconds) to allow the request to process.
8maxIdleTrackerMs: maximum amount of time (in milliseconds) to keep track of request rates for a connection, before deciding that the user has gone away, and discarding it.
9insertHeaders: insert the DoSFilter headers into the response.
10trackSessions: usage rate is tracked by session if a session exists.
11remotePort: usage rate is tracked by IP+port (effectively connection) if session tracking is not used.
12enabled: whether this filter is enabled
13whitelist: comma separated list of IP addresses that will not be rate limited.
14clearWhitelist(): clears the list of IP addresses that will not be rate limited.
15addWhitelistAddress(java.lang.String):ACTION: adds an IP address that will not be rate limited.
16addWhitelistAddress(java.lang.String)[0]:address: the IP address that will not be rate limited.
17removeWhitelistAddress(java.lang.String):ACTION: removes an IP address that will not be rate limited.
18removeWhitelistAddress(java.lang.String)[0]:address: the IP address that will not be rate limited.