何時我們應把數據庫應用放置在DMZ區域?
問:我是一個政府的博物館里的一名志愿者,我們開發了一個數據庫應用程序,當志愿者和工作人員在史密森研究所(Smithsonian Institution)的網絡中工作時可以使用該應用程序。但是現在我們想讓我們的注冊用戶能在家里訪問該應用程序,這樣他們就能在家里進行他們的研究。將該應用程序放置在DMZ區域中是否合適呢?如果合適的話,那么DMZ中的該應用程序是否應該為內部交互應用程序的一個只讀副本?
答:你的問題中包含了兩個值得關注的安全問題:該應用程序的最佳的網絡位置和授權的遠程用戶的合適的訪問級別。你沒有提到任何有關于你們數據庫中的數據的敏感度的信息,所以我將假設其中沒有特別敏感的數據。
該應用程序放置的位置與網絡的拓撲結構關系很大。如果你們的組織者使用虛擬專用網絡(VPN),而且志愿者們也必須連接到VPN后才能使用該應用程序,那么應將該應用程序的Web前端程序放置在VPN終止的地方。如果這個地方在你們的內部網絡中,那么將該Web前端放在那里沒什么問題。
如果你不打算使用VPN連接,那么設置DMZ區域肯定是個不錯的選擇,因為它保證了那些從外部網絡對該應用程序的訪問(包括那些在沒有授權的情況下想要對該應用程序的訪問)都不能獲得對其它應用程序或網絡資源的訪問權限。
賦予遠程用戶的訪問級別應該遵循最小特權原則;只賦予他們完成工作所需的權限。如果沒有業務需求需要用戶在離線狀態下修改數據,那么就沒有必要賦予他們這些權限。在另一方面,假如他們需要讀權限,有很多的例子可以使得數據庫驅動的應用程序對外部用戶可用。要確保你考慮到了Web應用程序的安全性,因為還有一些合適的事情需要考慮,從而共同來增強托管的應用程序的安全性。