我们有一些tomcat服务器,我们刚刚发现一些我们不希望公开的文件可以访问这些文件.举例说明:
假设我们有一个文件夹/ var / www / html /我们通过tomcat发布,但我们不想公开/var/www/html/conf/dbinfo.txt.此时人们可以访问www.thissite.com/conf/dbinfo.txt,他们可以看到事情.我希望能够阻止它,所以没有显示它,但它允许它由tomcat本身读取.
任何帮助表示赞赏.
@R_404_323@
Tomcat的文件访问权限由WEB-INF / web.xml的安全性约束部分控制.
你可以这样阻止conf:
<security-constraint> <web-resource-collection> <web-resource-name>HTTP-Protected-Resource-1</web-resource-name> <description>Description here</description> <url-pattern>/conf/*</url-pattern> <http-method>GET</http-method> <http-method>POST</http-method> </web-resource-collection> <auth-constraint> <role-name>NOSOUPFORYOU</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>DEFAULT</auth-method> <realm-name>NOACCESSFORANYONE</realm-name> </login-config> <security-role> <role-name>NOSOUPFORYOU</role-name> </security-role>
如果您使用apache来提供静态内容,那么这将不起作用,因为apache将在tomcat获取URL之前提供conf文件.在这些情况下,您需要通过apache的http配置文件来解决这个问题.