How to restrict access by IP to specific dynamic URLs (only 1-2 pages) in tomcat or url-pattern format
Please do not close this question as answered, because all links I found like this and they are about how to block single static URL, but not a dynamic.
I have a Tomcat 7 and I have an application something like http://server/myapp/.
I need to restrict some pages inside this application for some IPs. for example, everything should work fine for all IPs, except these 2 pages
http://server/myapp/admin/appversion/index.jsp
http://server/myapp/admin/appversion/app_parameters.jsp
for static URL's it works perfectly if I add the filter to server's web.xml (...apache-tomcat-7confweb.xml) like this
<filter>
<filter-name>IPFilter</filter-name>
<filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class>
<init-param>
<param-name>allow</param-name>
<param-value>127.d+.d+.d+</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>IPFilter</filter-name>
<url-pattern>/admin/appversion/index.jsp</url-pattern>
<url-pattern>/admin/appversion/app_parameters.jsp</url-pattern>
</filter-mapping>
The problem comes when I need to do dynamic (or regexp) filtering. For example, every time I have a new version of application this part of URL (appversion) changes.
/admin/appversion/app_parameters.jsp
real url today looks like this /admin/1.0/app_parameters.jsp in 1 month it will be /admin/1.1/app_parameters.jsp etc. and I do not want to change it every time when I have an update. Also it might be different for dev, test and production environment and I do not want to support 3 different configurations and change for every update.
If I try to do it like this
<url-pattern>/admin/*/app_parameters.jsp</url-pattern>
then it does not work. and if I read tomcat official documentation there is no explanation how this works. There are some examples like /*, but it works only for every page.
My question:
Is there any way how to configure tomcat in a standard way and restrict some pages dynamically? One of the solutions can be to find full syntax of url-pattern and check if proper regexp is supported. Maybe using subfilters/nested filters etc. Or there is only one solution to create my custom java filter based on org.apache.catalina.filters.RemoteAddrFilter where I can apply proper regular expression to the URL?
P.S. one might think why I have admin pages inside the main application and I just should modify my app and move it to another app, but the problem is, that this application is a standard application from some vendor. I did not create this application by myself. If I change this application by my self, I will lose a support for it and I already checked, it is not easy to move this 2 pages. These 2 pages have a lot of dependencies from other parts of the application. Of course, I will create a ticket for this vendor separately, but it will be good to get an independent solution (Plan B) in case vendor cannot provide something.
UPDATE 1
I have checked tomcat source codes and looks like only 4 patterns are supported in element. This is the code from org.apache.catalina.core.ApplicationFilterFactory
private boolean matchFiltersURL(String testPath, String requestPath)
if (testPath == null)
return false;
if (testPath.equals(requestPath))
return true;
if (testPath.equals("/*"))
return true;
if (testPath.endsWith("/*"))
if (testPath.regionMatches(0, requestPath, 0, testPath.length() - 2))
if (requestPath.length() == testPath.length() - 2)
return true;
if ('/' == requestPath.charAt(testPath.length() - 2))
return true;
return false;
if (testPath.startsWith("*."))
int slash = requestPath.lastIndexOf('/');
int period = requestPath.lastIndexOf('.');
if ((slash >= 0) && (period > slash) && (period != requestPath.length() - 1) && (requestPath.length() - period == testPath.length() - 1))
return testPath.regionMatches(2, requestPath, period + 1, testPath.length() - 2);
return false;
briefly what is supported
1. exact URL match
2. <url-pattern>/*</url-pattern> means match for all URLs.
3. <url-pattern>/some/path/*</url-pattern> means match for all URLs starting with "/some/path". It support /* only at the end of the URL.
4. <url-pattern>*.ext</url-pattern> means match for any path but with specific extension.
5. All others are not supported (examples what is not supported: /fld1/*/fld2, /fld1/*.jsp, etc
some examples which can help to understand it
matchFiltersURL("", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypagejs", "./fld1/fld2/mypagejsp")
matchFiltersURL("*.jsp", "/.jsp");
(boolean) true
matchFiltersURL("*.xxxx", "/.xxxx");
(boolean) true
matchFiltersURL("*./fld1/xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("*./fld1/.xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("/fld1/fld2/*.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) false
As result of this, it is clearly not possible to use for dynamic filtering. The only possibility I can see now is a custom filter or nested filters.
java tomcat servlet-filters restriction
add a comment |
Please do not close this question as answered, because all links I found like this and they are about how to block single static URL, but not a dynamic.
I have a Tomcat 7 and I have an application something like http://server/myapp/.
I need to restrict some pages inside this application for some IPs. for example, everything should work fine for all IPs, except these 2 pages
http://server/myapp/admin/appversion/index.jsp
http://server/myapp/admin/appversion/app_parameters.jsp
for static URL's it works perfectly if I add the filter to server's web.xml (...apache-tomcat-7confweb.xml) like this
<filter>
<filter-name>IPFilter</filter-name>
<filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class>
<init-param>
<param-name>allow</param-name>
<param-value>127.d+.d+.d+</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>IPFilter</filter-name>
<url-pattern>/admin/appversion/index.jsp</url-pattern>
<url-pattern>/admin/appversion/app_parameters.jsp</url-pattern>
</filter-mapping>
The problem comes when I need to do dynamic (or regexp) filtering. For example, every time I have a new version of application this part of URL (appversion) changes.
/admin/appversion/app_parameters.jsp
real url today looks like this /admin/1.0/app_parameters.jsp in 1 month it will be /admin/1.1/app_parameters.jsp etc. and I do not want to change it every time when I have an update. Also it might be different for dev, test and production environment and I do not want to support 3 different configurations and change for every update.
If I try to do it like this
<url-pattern>/admin/*/app_parameters.jsp</url-pattern>
then it does not work. and if I read tomcat official documentation there is no explanation how this works. There are some examples like /*, but it works only for every page.
My question:
Is there any way how to configure tomcat in a standard way and restrict some pages dynamically? One of the solutions can be to find full syntax of url-pattern and check if proper regexp is supported. Maybe using subfilters/nested filters etc. Or there is only one solution to create my custom java filter based on org.apache.catalina.filters.RemoteAddrFilter where I can apply proper regular expression to the URL?
P.S. one might think why I have admin pages inside the main application and I just should modify my app and move it to another app, but the problem is, that this application is a standard application from some vendor. I did not create this application by myself. If I change this application by my self, I will lose a support for it and I already checked, it is not easy to move this 2 pages. These 2 pages have a lot of dependencies from other parts of the application. Of course, I will create a ticket for this vendor separately, but it will be good to get an independent solution (Plan B) in case vendor cannot provide something.
UPDATE 1
I have checked tomcat source codes and looks like only 4 patterns are supported in element. This is the code from org.apache.catalina.core.ApplicationFilterFactory
private boolean matchFiltersURL(String testPath, String requestPath)
if (testPath == null)
return false;
if (testPath.equals(requestPath))
return true;
if (testPath.equals("/*"))
return true;
if (testPath.endsWith("/*"))
if (testPath.regionMatches(0, requestPath, 0, testPath.length() - 2))
if (requestPath.length() == testPath.length() - 2)
return true;
if ('/' == requestPath.charAt(testPath.length() - 2))
return true;
return false;
if (testPath.startsWith("*."))
int slash = requestPath.lastIndexOf('/');
int period = requestPath.lastIndexOf('.');
if ((slash >= 0) && (period > slash) && (period != requestPath.length() - 1) && (requestPath.length() - period == testPath.length() - 1))
return testPath.regionMatches(2, requestPath, period + 1, testPath.length() - 2);
return false;
briefly what is supported
1. exact URL match
2. <url-pattern>/*</url-pattern> means match for all URLs.
3. <url-pattern>/some/path/*</url-pattern> means match for all URLs starting with "/some/path". It support /* only at the end of the URL.
4. <url-pattern>*.ext</url-pattern> means match for any path but with specific extension.
5. All others are not supported (examples what is not supported: /fld1/*/fld2, /fld1/*.jsp, etc
some examples which can help to understand it
matchFiltersURL("", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypagejs", "./fld1/fld2/mypagejsp")
matchFiltersURL("*.jsp", "/.jsp");
(boolean) true
matchFiltersURL("*.xxxx", "/.xxxx");
(boolean) true
matchFiltersURL("*./fld1/xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("*./fld1/.xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("/fld1/fld2/*.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) false
As result of this, it is clearly not possible to use for dynamic filtering. The only possibility I can see now is a custom filter or nested filters.
java tomcat servlet-filters restriction
add a comment |
Please do not close this question as answered, because all links I found like this and they are about how to block single static URL, but not a dynamic.
I have a Tomcat 7 and I have an application something like http://server/myapp/.
I need to restrict some pages inside this application for some IPs. for example, everything should work fine for all IPs, except these 2 pages
http://server/myapp/admin/appversion/index.jsp
http://server/myapp/admin/appversion/app_parameters.jsp
for static URL's it works perfectly if I add the filter to server's web.xml (...apache-tomcat-7confweb.xml) like this
<filter>
<filter-name>IPFilter</filter-name>
<filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class>
<init-param>
<param-name>allow</param-name>
<param-value>127.d+.d+.d+</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>IPFilter</filter-name>
<url-pattern>/admin/appversion/index.jsp</url-pattern>
<url-pattern>/admin/appversion/app_parameters.jsp</url-pattern>
</filter-mapping>
The problem comes when I need to do dynamic (or regexp) filtering. For example, every time I have a new version of application this part of URL (appversion) changes.
/admin/appversion/app_parameters.jsp
real url today looks like this /admin/1.0/app_parameters.jsp in 1 month it will be /admin/1.1/app_parameters.jsp etc. and I do not want to change it every time when I have an update. Also it might be different for dev, test and production environment and I do not want to support 3 different configurations and change for every update.
If I try to do it like this
<url-pattern>/admin/*/app_parameters.jsp</url-pattern>
then it does not work. and if I read tomcat official documentation there is no explanation how this works. There are some examples like /*, but it works only for every page.
My question:
Is there any way how to configure tomcat in a standard way and restrict some pages dynamically? One of the solutions can be to find full syntax of url-pattern and check if proper regexp is supported. Maybe using subfilters/nested filters etc. Or there is only one solution to create my custom java filter based on org.apache.catalina.filters.RemoteAddrFilter where I can apply proper regular expression to the URL?
P.S. one might think why I have admin pages inside the main application and I just should modify my app and move it to another app, but the problem is, that this application is a standard application from some vendor. I did not create this application by myself. If I change this application by my self, I will lose a support for it and I already checked, it is not easy to move this 2 pages. These 2 pages have a lot of dependencies from other parts of the application. Of course, I will create a ticket for this vendor separately, but it will be good to get an independent solution (Plan B) in case vendor cannot provide something.
UPDATE 1
I have checked tomcat source codes and looks like only 4 patterns are supported in element. This is the code from org.apache.catalina.core.ApplicationFilterFactory
private boolean matchFiltersURL(String testPath, String requestPath)
if (testPath == null)
return false;
if (testPath.equals(requestPath))
return true;
if (testPath.equals("/*"))
return true;
if (testPath.endsWith("/*"))
if (testPath.regionMatches(0, requestPath, 0, testPath.length() - 2))
if (requestPath.length() == testPath.length() - 2)
return true;
if ('/' == requestPath.charAt(testPath.length() - 2))
return true;
return false;
if (testPath.startsWith("*."))
int slash = requestPath.lastIndexOf('/');
int period = requestPath.lastIndexOf('.');
if ((slash >= 0) && (period > slash) && (period != requestPath.length() - 1) && (requestPath.length() - period == testPath.length() - 1))
return testPath.regionMatches(2, requestPath, period + 1, testPath.length() - 2);
return false;
briefly what is supported
1. exact URL match
2. <url-pattern>/*</url-pattern> means match for all URLs.
3. <url-pattern>/some/path/*</url-pattern> means match for all URLs starting with "/some/path". It support /* only at the end of the URL.
4. <url-pattern>*.ext</url-pattern> means match for any path but with specific extension.
5. All others are not supported (examples what is not supported: /fld1/*/fld2, /fld1/*.jsp, etc
some examples which can help to understand it
matchFiltersURL("", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypagejs", "./fld1/fld2/mypagejsp")
matchFiltersURL("*.jsp", "/.jsp");
(boolean) true
matchFiltersURL("*.xxxx", "/.xxxx");
(boolean) true
matchFiltersURL("*./fld1/xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("*./fld1/.xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("/fld1/fld2/*.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) false
As result of this, it is clearly not possible to use for dynamic filtering. The only possibility I can see now is a custom filter or nested filters.
java tomcat servlet-filters restriction
Please do not close this question as answered, because all links I found like this and they are about how to block single static URL, but not a dynamic.
I have a Tomcat 7 and I have an application something like http://server/myapp/.
I need to restrict some pages inside this application for some IPs. for example, everything should work fine for all IPs, except these 2 pages
http://server/myapp/admin/appversion/index.jsp
http://server/myapp/admin/appversion/app_parameters.jsp
for static URL's it works perfectly if I add the filter to server's web.xml (...apache-tomcat-7confweb.xml) like this
<filter>
<filter-name>IPFilter</filter-name>
<filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class>
<init-param>
<param-name>allow</param-name>
<param-value>127.d+.d+.d+</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>IPFilter</filter-name>
<url-pattern>/admin/appversion/index.jsp</url-pattern>
<url-pattern>/admin/appversion/app_parameters.jsp</url-pattern>
</filter-mapping>
The problem comes when I need to do dynamic (or regexp) filtering. For example, every time I have a new version of application this part of URL (appversion) changes.
/admin/appversion/app_parameters.jsp
real url today looks like this /admin/1.0/app_parameters.jsp in 1 month it will be /admin/1.1/app_parameters.jsp etc. and I do not want to change it every time when I have an update. Also it might be different for dev, test and production environment and I do not want to support 3 different configurations and change for every update.
If I try to do it like this
<url-pattern>/admin/*/app_parameters.jsp</url-pattern>
then it does not work. and if I read tomcat official documentation there is no explanation how this works. There are some examples like /*, but it works only for every page.
My question:
Is there any way how to configure tomcat in a standard way and restrict some pages dynamically? One of the solutions can be to find full syntax of url-pattern and check if proper regexp is supported. Maybe using subfilters/nested filters etc. Or there is only one solution to create my custom java filter based on org.apache.catalina.filters.RemoteAddrFilter where I can apply proper regular expression to the URL?
P.S. one might think why I have admin pages inside the main application and I just should modify my app and move it to another app, but the problem is, that this application is a standard application from some vendor. I did not create this application by myself. If I change this application by my self, I will lose a support for it and I already checked, it is not easy to move this 2 pages. These 2 pages have a lot of dependencies from other parts of the application. Of course, I will create a ticket for this vendor separately, but it will be good to get an independent solution (Plan B) in case vendor cannot provide something.
UPDATE 1
I have checked tomcat source codes and looks like only 4 patterns are supported in element. This is the code from org.apache.catalina.core.ApplicationFilterFactory
private boolean matchFiltersURL(String testPath, String requestPath)
if (testPath == null)
return false;
if (testPath.equals(requestPath))
return true;
if (testPath.equals("/*"))
return true;
if (testPath.endsWith("/*"))
if (testPath.regionMatches(0, requestPath, 0, testPath.length() - 2))
if (requestPath.length() == testPath.length() - 2)
return true;
if ('/' == requestPath.charAt(testPath.length() - 2))
return true;
return false;
if (testPath.startsWith("*."))
int slash = requestPath.lastIndexOf('/');
int period = requestPath.lastIndexOf('.');
if ((slash >= 0) && (period > slash) && (period != requestPath.length() - 1) && (requestPath.length() - period == testPath.length() - 1))
return testPath.regionMatches(2, requestPath, period + 1, testPath.length() - 2);
return false;
briefly what is supported
1. exact URL match
2. <url-pattern>/*</url-pattern> means match for all URLs.
3. <url-pattern>/some/path/*</url-pattern> means match for all URLs starting with "/some/path". It support /* only at the end of the URL.
4. <url-pattern>*.ext</url-pattern> means match for any path but with specific extension.
5. All others are not supported (examples what is not supported: /fld1/*/fld2, /fld1/*.jsp, etc
some examples which can help to understand it
matchFiltersURL("", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1*", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("/fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) true
matchFiltersURL("/fld1/*/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypage.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/mypagejs", "./fld1/fld2/mypagejsp")
matchFiltersURL("*.jsp", "/.jsp");
(boolean) true
matchFiltersURL("*.xxxx", "/.xxxx");
(boolean) true
matchFiltersURL("*./fld1/xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("*./fld1/.xxxx", "/fld1/.xxxx");
(boolean) false
matchFiltersURL("/fld1/fld2/*.jsp", "/fld1/fld2/mypage.jsp")
(boolean) false
matchFiltersURL("*./fld1/fld2/*", "/fld1/fld2/mypage.jsp")
(boolean) false
As result of this, it is clearly not possible to use for dynamic filtering. The only possibility I can see now is a custom filter or nested filters.
java tomcat servlet-filters restriction
java tomcat servlet-filters restriction
edited Nov 13 '18 at 15:05
Zlelik
asked Nov 12 '18 at 11:28
ZlelikZlelik
264311
264311
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53261211%2fhow-to-restrict-access-by-ip-to-specific-dynamic-urls-only-1-2-pages-in-tomcat%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53261211%2fhow-to-restrict-access-by-ip-to-specific-dynamic-urls-only-1-2-pages-in-tomcat%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown