阻止访问静态内容文件夹

时间:2011-11-13 22:07:02

标签: servlets web.xml

我想知道如何阻止访问我的网络应用中的静态内容文件夹。这些文件夹位于战争中的web-root文件夹内。像这样:

    myapp/

       -css/
       -js/
       -swf/
         :
       WEB-INF/

我希望当用户在会话中时,内容只能从应用程序中看到。如果有人在他/她的会话之外(在其过期之后)点击了网址,则应该阻止该内容。

它是一个带有spring的groovy-grails应用程序,我们正在使用tomcat服务器。

2 个答案:

答案 0 :(得分:5)

  1. 通常, / WEB-INF 下的文件无法直接从外部访问。最好将这些文件保存在 / WEB-INF
  2. 使用网络安全限制进行保护。以下是限制文件夹的示例:

     <security-constraint>
       <web-resource-collection>
         <web-resource-name >precluded methods</web-resource-name>
         <url-pattern >/css/*</url-pattern>
         <url-pattern >/js/*</url-pattern>
         <url-pattern >/swf/*</url-pattern>
         </web-resource-collection>
       <auth-constraint/>
     </security-constraint>
    
  3. 大多数应用服务器都支持将文件或目录屏蔽到外部世界。请检查他们的文件。

    Tomcat Documentation

答案 1 :(得分:1)

你需要:

  1. 在进行会话检查后自行流回来
  2. 在检查会话中有效用户的路径上放置常规Filter
相关问题