我想从question.jsp
中只排除一个JSP文件security-constraint
。
我的 web.xml :
<security-constraint>
<display-name>My Security Constraint</display-name>
<web-resource-collection>
<web-resource-name>Protected Area</web-resource-name>
<url-pattern>*.do</url-pattern>
<url-pattern>*.jsp</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>*</role-name>
</auth-constraint>
</security-constraint>
答案 0 :(得分:24)
只需添加免费页面部分,而不提供任何身份验证约束。它将优先于受保护的页面:
<security-constraint>
<web-resource-collection>
<web-resource-name>free pages</web-resource-name>
<url-pattern>/question.jsp</url-pattern>
</web-resource-collection>
</security-constraint>
答案 1 :(得分:0)
解决此问题的一种方法是将所有安全的JSP内容移动到特定的目录路径(例如/ protected / from web root),然后您的web.xml内容将如下所示:
<security-constraint>
<display-name>My Security Constraint</display-name>
<web-resource-collection>
<web-resource-name>Protected Area</web-resource-name>
<url-pattern>/protected/*.jsp</url-pattern>
您可以根据需要将公共JSP保留在默认docroot或其他目录路径中。