public class InetAccessHandler extends HandlerWrapper
Controls access to the wrapped handler using the real remote IP. Control is provided
by and IncludeExcludeSet over a InetAddressSet. This handler
uses the real internet address of the connection, not one reported in the forwarded
for headers, as this cannot be as easily forged.
AbstractHandler.ErrorDispatchHandler_handler| Constructor and Description |
|---|
InetAccessHandler() |
| Modifier and Type | Method and Description |
|---|---|
void |
dump(java.lang.Appendable out,
java.lang.String indent) |
void |
exclude(java.lang.String... patterns)
Excludes InetAddress patterns
|
void |
exclude(java.lang.String pattern)
Excludes an InetAddress pattern
|
void |
handle(java.lang.String target,
Request baseRequest,
HttpServletRequest request,
HttpServletResponse response)
Checks the incoming request against the whitelist and blacklist
|
void |
include(java.lang.String... patterns)
Includes InetAddress patterns
|
void |
include(java.lang.String pattern)
Includes an InetAddress pattern
|
protected boolean |
isAllowed(java.net.InetAddress address,
HttpServletRequest request)
Checks if specified address and request are allowed by current InetAddress rules.
|
destroy, expandChildren, getHandler, getHandlers, insertHandler, setHandlerexpandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass, setServerpublic void include(java.lang.String pattern)
pattern - InetAddress pattern to includeInetAddressSetpublic void include(java.lang.String... patterns)
patterns - InetAddress patterns to includeInetAddressSetpublic void exclude(java.lang.String pattern)
pattern - InetAddress pattern to excludeInetAddressSetpublic void exclude(java.lang.String... patterns)
patterns - InetAddress patterns to excludeInetAddressSetpublic void handle(java.lang.String target,
Request baseRequest,
HttpServletRequest request,
HttpServletResponse response)
throws java.io.IOException,
ServletException
handle in interface Handlerhandle in class HandlerWrappertarget - The target of the request - either a URI or a name.baseRequest - The original unwrapped request object.request - The request either as the Request object or a wrapper of that request. The
HttpConnection.getCurrentConnection().getHttpChannel().getRequest()
method can be used access the Request object if required.response - The response as the Response object or a wrapper of that request. The
HttpConnection.getCurrentConnection().getHttpChannel().getResponse()
method can be used access the Response object if required.java.io.IOException - if unable to handle the request or response processingServletException - if unable to handle the request or response due to underlying servlet issueprotected boolean isAllowed(java.net.InetAddress address,
HttpServletRequest request)
address - the inetAddress to checkrequest - the request to checkpublic void dump(java.lang.Appendable out,
java.lang.String indent)
throws java.io.IOException
java.io.IOException