2009-09-25 105 views
1

我參與了設計Java EE Web應用程序的過程。它包括:安全的Java EE Web應用程序和Seam設計指南

  • 後端模塊(EJB 3.0)
  • 3 Web模塊(JSF)

,所以有些同事聲稱,它必須被分裂成兩個或更多的我們的應用程序必須是安全的單獨的服務器 - 一臺服務器中的後端,另一臺服務器中的webapps。在我們的案例中,性能不是問題,但是這種架構需要在EJB層中使用遠程接口。

我們也計劃將Seam集成到簡化開發中,但有一個drawback。所以我們錯過了Seam的一些非常酷的功能,例如 - extended persistence context in SFSB

對於每個J2EE EE Web應用程序層,使用具有兩個或多個單獨服務器/機器的體系結構在高安全性方面是否真的必須使用?我沒有找到解釋這種配置優缺點的資源。我應該考慮哪些其他項目配置選項/安全模式,以促進使用Seam?換句話說,我們應該堅持使用這種架構,並按照原樣添加Seam或應用其他解決方案?

如果有幫助,我們可以使用Spring而不是EJB,但是EJB更可取。

回答

0

這是一個簡單的答案,你是問題....更安全的是讓你的數據跨越3個網絡連接(Web-> Web服務器是1,Web服務器 - >遠程EJB是2,遠程EJB-> DB是3)還是2個網絡連接? 2網絡連接本質上更安全,因爲線路上的敵意聆聽較少。 如果你是攻擊者能夠讀取Java用來從你的Web服務器上獲取數據的內存,那麼你就會遇到更大的問題,而單獨的服務器根本無法提供幫助。

+0

我假設Web服務器在DMZ中。其他服務器是在專用網絡中,因此不需要在網絡服務器中進行攻擊就很難在線路上進行敵意收聽? – cetnar 2009-09-25 21:50:11