首先是背景 -
我在Tomcat中有一个正在运行的JSF 1.1.14 Web项目。
Tomcat在HTTPS上托管相同的内容(SSL已配置且运行正常)
要实现上述2.我们在web-app的web.xml中有以下配置 -
<!-- ======= TRANSPORT GUARANTEE CONSTRAINT Starts ======= -->
<security-constraint>
<web-resource-collection>
<web-resource-name>URL reserved for Acquisition application</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>POST</http-method>
<http-method>GET</http-method>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<!-- ======= TRANSPORT GUARANTEE CONSTRAINT Ends ======== -->
以上,我认为是Tomcat的行业标准方法。
问题是我们需要通过网络应用程序禁用* .xhtml访问权限,并继续在整个网络应用程序中使用HTTPS。
在理想的环境中,使用下面的代码段可以轻松实现这一点...再次在web.xml文件中 -
<!-- ======= Direct .xhtml access constraint - Starts ======= -->
<security-constraint>
<display-name>Restrict direct access to XHTML files</display-name>
<web-resource-collection>
<web-resource-name>XHTML files</web-resource-name>
<url-pattern>*.xhtml</url-pattern>
</web-resource-collection>
<auth-constraint />
</security-constraint>
<!-- ======= Direct .xhtml access constraint - Ends ======= -->
问题是,即使使用上述内容,我也可以使用web-app URL查看* .xhtml文件的来源。
删除HTTPS安全约束后情况非常好。我的直觉是HTTPS安全约束超越了文件访问约束。
我已经搜索过高低,但我还没有发现任何可以同时使用这两种方法的东西。
请帮助找到可在HTTPS网络应用中禁用文件访问权限的内容。
感谢。
Ckhurana