仅针对特定URL的Tomcat基本认证
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了仅针对特定URL的Tomcat基本认证相关的知识,希望对你有一定的参考价值。
我正在使用JSP和servlet。我想在同一服务器上部署两个Web应用程序,但使用不同的URL。
我需要通过不同的用户和密码为两个Web应用程序设置基本身份验证
我已经在tomcat中配置了以下内容。
在Web.xml文件中
<web-app>
<security-constraint>
<web-resource-collection>
<web-resource-name>timesheet</web-resource-name>
<url-pattern>/timesheet</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>timesheetuser</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>user password required. Producted by Udhayakumar</realm-name>
</login-config>
<security-constraint>
<web-resource-collection>
<web-resource-name>test</web-resource-name>
<url-pattern>/test</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>testuser</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>user password required. Producted by Udhayakumar</realm-name>
</login-config>
</web-app>
在tomcat-user.xml文件中]<tomcat-users>
<role rolename="timesheet"/>
<role rolename="test"/>
<user username="timesheetuser" password="test123" roles="timesheet"/>
<user username="testuser" password="test123" roles="test"/>
</tomcat-users>
<tomcat-users>
<role rolename="timesheet"/>
<role rolename="test"/>
<user username="timesheetuser" password="test123" roles="timesheet"/>
<user username="testuser" password="test123" roles="test"/>
</tomcat-users>
Tomcat Web应用程序管理器
如果我在浏览器中打开此URL,而不要求用户名和密码。它直接打开
- localhost:8080 / timesheet
- localhost:8080 / test
我想在时间表和测试应用程序中使用其他用户和密码。上面的方法对我不起作用。有任何错误吗?
我正在使用JSP和servlet。我想在同一服务器上部署两个Web应用程序,但使用不同的URL。我需要为两个Web应用程序设置不同用户的基本身份验证,并且...
答案
在Web.xml中]
<security-constraint>
<web-resource-collection>
<web-resource-name>Wildcard means whole app requires authentication</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>testuser</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
以上是关于仅针对特定URL的Tomcat基本认证的主要内容,如果未能解决你的问题,请参考以下文章
仅针对 nginx 上的特定 url 使用 https 重定向
如何仅针对特定 url 添加 Spring Security 验证码过滤器
当基本字符串包含双引号时,仅针对 Swift 中 UILabel 的特定范围的点击手势不起作用
对于某些情况,如 Internet Explorer 特定的 CSS 或 Internet Explorer 特定的 JavaScript 代码,如何仅针对 Internet Explorer 10?