Tomcat:限制java Web服务访问主机文件系统

时间:2013-06-01 11:39:48

标签: web-services windows-7 spring-security tomcat7 security

我有用java编写的Web服务(war文件)(使用Spring Security)。在Web服务中,我可以通过主机读取所有文件(使用FileInputStream)。

我的主机(Windows系统)包含非常敏感的数据,我不想与任何人分享。

假设有人以非自然的方式(以任何方式)访问我的tomcat,那么他可以在其上部署文件&可以在其上运行命令,通过它可以轻松访问我的主机文件系统。

如何预防?

我可以禁用自动部署&在tomcat上做其他安全技巧以防止攻击。

但是,这不能解决我的问题。

这是否有意义我的文件系统是不安全的&这是一个值得担心的事情。 或者更好,我不应该在服务器上保留敏感数据。

1 个答案:

答案 0 :(得分:0)

这有几个答案。首先:考虑在不包含敏感数据的单独机器上运行tomcat。除此之外,您应该确保用于运行tomcat的用户或服务具有最小的系统权限。它不需要能够访问整个文件系统。

http://tomcat.apache.org/tomcat-7.0-doc/security-howto.html提供了大量安全注意事项和提示。

您可以考虑使用安全管理器运行tomcat,该安全管理器用于限制已执行java代码的权限。查看http://tomcat.apache.org/tomcat-7.0-doc/security-manager-howto.html以了解如何设置tomcat以使用安全管理器。