2013-06-01 103 views
0

我有用java寫的web服務(war文件)(使用Spring Security)。在Web服務中,我可以通過主機讀取所有文件(使用FileInputStream)。Tomcat:限制java web服務訪問主機文件系統

我的主機(Windows系統)包含非常敏感的數據,我不想與任何人分享。

假設有人可以非授權地(以任何方式)訪問我的tomcat,那麼他可以在其上部署文件&可以在其上運行命令,使用它可以輕鬆訪問我的主機計算機文件系統。

這是如何防止的?

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

但是,這並不能解決我的問題。

這是有道理的,我的文件系統是不安全的&這是一個需要擔心的事情。 或更好的我不應該保持服務器上的敏感數據。

+0

**這是有道理的,我的文件系統是不安全的,這是一件需要擔心的事情。或者更好的是,我不應該在服務器上保存敏感數據。** *是的,非常擔心,並且不要將敏感數據保存在手臂範圍內*。 **在web服務中,我可以通過主機讀取所有文件(使用FileInputStream)。**您正在請求違反 – kolossus

+0

但是,我可以阻止來自tomcat訪問的某些目錄。像D Drive上的一些文件夾一樣? –

回答

0

有幾個答案。首先:考慮在不包含敏感數據的獨立機器上運行tomcat。除此之外,您應該確保用於運行tomcat的用戶或服務具有最小的系統權限。它不需要能夠訪問整個文件系統。

一系列的安全考慮和技巧可在http://tomcat.apache.org/tomcat-7.0-doc/security-howto.html獲得。

此外,您可能會考慮運行帶有用於限制執行的java代碼的特權的安全管理器的tomcat。看看http://tomcat.apache.org/tomcat-7.0-doc/security-manager-howto.html來看看如何設置tomcat來使用安全管理器。