Class IpFilter
java.lang.Object
services.moleculer.service.MoleculerComponent
services.moleculer.service.Service
services.moleculer.web.middleware.HttpMiddleware
services.moleculer.web.middleware.IpFilter
- All Implemented Interfaces:
services.moleculer.service.MoleculerLifecycle, HttpConstants
- Direct Known Subclasses:
HostNameFilter
The IpFilter Middleware adds the ability to allow or block requests based on
the IP address of the client. Sample:
IpFilter filter = new IpFilter();
filter.allow("150.10.**");
route.use(filter);
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String[]Masks (allowed addresses, eg "255.12.34.*").protected String[]Masks (denied addresses, eg "255.10.**").protected StringTemplate of the HTML response.protected byte[]Cached response bytes.protected StringTemplate path of the HTML response.protected final org.slf4j.LoggerFields inherited from class services.moleculer.service.MoleculerComponent
broker, nameFields inherited from interface HttpConstants
ACCEPT, ACCEPT_ENCODING, AUTHORIZATION, CACHE_CONTROL, CHUNKED, CLOSE, CONNECT, CONNECTION, CONTENT_ENCODING, CONTENT_LENGTH, CONTENT_TYPE, CONTENT_TYPE_HTML, CONTENT_TYPE_JSON, COOKIE, DEFLATE, DELETE, ETAG, GET, GZIP, HEAD, IF_NONE_MATCH, KEEP_ALIVE, LOCATION, META_CONTENT_TYPE, META_HEADERS, META_LOCALE, META_LOCATION, META_SESSION, META_STATUS, META_TEMPLATE, NO_CACHE, OPTIONS, PATCH, POST, PROPERTY_COOKIES, PROPERTY_SESSION_ID, PROPERTY_USER, PUT, SET_COOKIE, TRACE, TRANSFER_ENCODING, WWW_AUTHENTICATE, X_FORWARDED_FOR -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdds "allow" filters (eg "255.10.**", "230.110.10.*" or regular expression).Adds "deny" filters (eg "255.10.**", "130.30.12.*" or regular expression).protected StringgetAddress(WebRequest req) install(RequestProcessor next, io.datatree.Tree config) protected String[]mergeFilters(String[] previous, String[] filters) protected voidsendForbidden(WebRequest req, WebResponse rsp, String address) voidsetHtmlTemplate(String htmlTemplate) voidsetHtmlTemplatePath(String htmlTemplatePath) Methods inherited from class services.moleculer.service.MoleculerComponent
getBroker, getLogger, getName, started, stopped
-
Field Details
-
logger
protected final org.slf4j.Logger logger -
htmlTemplatePath
Template path of the HTML response. -
htmlTemplate
Template of the HTML response. -
htmlTemplateBytes
protected byte[] htmlTemplateBytesCached response bytes. -
allow
Masks (allowed addresses, eg "255.12.34.*"). -
deny
Masks (denied addresses, eg "255.10.**").
-
-
Constructor Details
-
IpFilter
public IpFilter() -
IpFilter
-
-
Method Details
-
install
- Specified by:
installin classHttpMiddleware
-
getAddress
-
sendForbidden
-
allow
-
deny
-
mergeFilters
-
getHtmlTemplate
- Returns:
- the htmlTemplate
-
setHtmlTemplate
- Parameters:
htmlTemplate- the htmlTemplate to set
-
getHtmlTemplatePath
- Returns:
- the htmlTemplatePath
-
setHtmlTemplatePath
- Parameters:
htmlTemplatePath- the htmlTemplatePath to set
-