2009-02-25 26 views
1

我有興趣聽到別人在某個給定的應用程序中所做的一些頁面需要安全而其他頁面不安全。從需要單獨的域/子域的表中取出任何解決方案。在這種情況下,所有安全或不安全的呼叫都將鏈接到同一個域。我看到幾個選項:在應用程序中使用SSL鏈接策略

  1. 火腿手,只是安全的一切辦法。
  2. 甲URI改寫的解決方案,確保需要是安全的網頁經由https協議來訪問,要麼忽略其他網頁,或者迫使那些標準的HTTP
  3. 一個應用程序爲中心的方法,其中每個鏈路負責知道它是否指向並應用正確的協議。在這個解決方案中,所有鏈接都必須完全合格。
  4. 應用爲中心的方法,即鏈接到安全網頁的放任公平的版本是完全合格的,並鏈接到其他頁面都沒有。在這種情況下,該協議將被繼承用於未明確處理的頁面,並且可以通過https訪問無關緊要的頁面。

我已經使用過其中的幾個,但它們都有缺陷。其他人在這些情況下做什麼?我還沒有考慮過另一條路嗎?

UPDATE:

vartec的回答下面讓我意識到,我已經離開了一個信息關鍵部分。在我的網絡配置中,所有SSL處理都在負載平衡器級別處理。 LB然後通過端口80與Web服務器集羣通信。結果,應用程序本身不知道流量是否安全到達。他們看到的只是一個80端口連接。

謝謝。

回答

0

我用的#4和#2的混合物:嘗試指定在可能情況下,當我需要切換協議的絕對URL,並實現服務器端重定向趕上我沒有使用上絕對URL任何鏈接(或者,如果某人直接訪問URL,而不是通過鏈接訪問)。

在我看來,最重要的是安全地訪問需要安全訪問的頁面(表單提交等),爲此我使用Apache的SSLRequireSSL指令。通過它可以很容易地驗證自己除了通過SSL之外永遠不會訪問某些頁面。

0

我的笨拙保證這一切的做法,但你用了我真正的假表的解決方案(奇怪的是我的腦海裏),不包括域/子域的解決方案。確保網站安全的錯誤遠比處理一些開銷更危險。

我們有我們的主要網站,這是不安全的(但主要是市場營銷),然後我們有應用網站是一個不同的子域。簡單,簡單而有效。爲什麼要從桌子上拿下這個選項?

+0

我採取基於域的方法假表的原因是,我們已經限制IP地址的工作,所以我們沒有一個單獨的域與自己的IP選項只是爲了處理SSL爲每個站點我們需要保護。 – 2009-02-26 10:47:31

+0

啊,端口/ IP綁定問題:你有很多網站需要唯一的證書。我們通配符基域和客戶端使用子域來標識他們的應用程序,但是如果您需要不同的域名,那麼這是行不通的。 – Godeke 2009-02-26 16:47:56

0

應用爲中心的方法,其中控制器的每一頁都知道,如果它必須是安全的。如果它需要安全,但是通過不安全的http訪問,則重定向到https,傳遞所有參數。

相關問題