我需要關於如何在當前Java網站上獲得最大安全性的建議。如何在tomcat中保護多個war文件7
我已經將這兩個應用程序部署在CentOS6服務器端口8080上的一個tomcat-7實例下。
的.war文件
- website.war(上下文名稱爲ROOT)
- processor.war(上下文名稱爲處理器)
批次罐子
- batch.jar
安全要求
- website.war是公開訪問。無需安全性
- processor.war從website.war獲取HTTP請求並返回網站顯示給用戶的結果。
- batch.jar在服務器的後臺運行,所以我猜想安全服務器除了安全服務器以外不需要任何安全性。
目前我已經加入到processor.war的web.xml文件,以確保有用戶,並通過設置在tomcat-users.xml文件「user」角色下面
- 只要求能訪問/進程url。
- 只有在tomcat-users.xml文件中設置了具有「admin」角色的用戶名和密碼的請求才能訪問/ admin url。
這是我對processor.war的web.xml文件的配置。
<security-constraint>
<web-resource-collection>
<web-resource-name>Admin</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>Public</web-resource-name>
<url-pattern>/processor/process*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>user</role-name>
<role-name>admin</role-name>
</auth-constraint>
</security-constraint>
這是足夠安全?我讀過攻擊者可以欺騙請求並在HTTP請求中讀取密碼。我只是想真的安全processor.war使
- 只website.war(本地主機:8080)可以請求發送給本地主機processor.war:8080 /處理器/過程
- ,只有管理員用戶可以訪問localhost:8080/processor/admin頁面。
有人可以告訴我更多的安全是必要的,如果是的話,我能做些什麼來保護它?
這篇文章可能會感興趣,如果你不熟悉的主題:[Tomcat的 - 數字認證](http://techannotation.wordpress.com/2012/07/02/tomcat-digestauthentication /) – paulsm4
我不知道這件事。感謝堆保羅。我將實施DIGEST身份驗證方法而不是BASIC。這應該是正確的?我需要更多的安全嗎? – hajime
這更多的是一個系統管理員任務:帶有反向代理(如Apache)的「前」tomcat,它可以打開80端口(或更好的443)和代理到您的網站戰爭,以及如果需要的話,您的processor.war的管理頁面。除本地呼叫外,全部阻止端口8080。一旦您擁有基本的安全性,您就無法調整授權 –