2010-03-29 183 views
1

我正在使用SharePoint(WSS)構建的公共網站上工作。我們需要在人們可以用信用卡購買物品的網站上添加一個區域,顯然這個區域需要得到保護。SharePoint:公共網站中的https區域

該網站正在使用基於表單的身份驗證,並且用戶需要在來自https區域來回移動時保持登錄狀態。

我知道如何爲新的Web應用程序/網站集啓用SSL,但對於我來說這不是一個真正的選擇,因爲該網站已經在線,並且我們不希望整個事情得到保護。

我對所涉及的webparts(支付模塊,購物車等)的開發感到滿意,但我無法真正瞭解如何在創建網站集時創建僅某些https頁面。

您可以使用部署受保護頁面的功能嗎?如果是這樣,怎麼樣?您是否可以啓用啓用了SSL的區域,但用戶是否重定向到了而不丟失其身份驗證(FBA)?

謝謝!

回答

1

有幾種方法可以解決這個:

  1. 如果你的防火牆支持的話,你可以在防火牆級別終止SSL,並有確定哪些網頁需要通過SSL進行保護(使用ISA服務器如)並保持現有的網站。

  2. 或者,您可以將現有網站設置爲通過HTTPS和HTTP接受請求。在IIS級別,這涉及到安裝SSL證書並在端口443上添加附加綁定。在SharePoint級別,還需要添加備用訪問映射以使SharePoint知道https URL。我已將這些步驟記錄在http://www.sharepointconfig.com/2010/03/configuring-a-sharepoint-website-to-allow-ssl-connections/。然後,您可以使用IIS 7 URL重寫模塊或通過HttpModule強制使用特定頁面來使用SSL。

  3. 您可以將Web應用程序擴展到新的IIS網站(Microsoft建議在http://technet.microsoft.com/en-us/library/cc298636.aspx的文章中爲HTTP和SSL使用單獨的IIS網站)。這確實增加了運行和管理兩個IIS網站,web.config等的開銷,這可能或可能不是必需的。這種方法也需要某種方式將請求重定向到適當的協議。

+0

很好的回答!選項#2似乎是目前最好的選擇,因爲所有這些都可以很快完成。也將考慮選項#3。我們有一個自動的web.config修飾符,它可以消除大部分涉及的開銷。再次感謝您的回答,一旦我找到工作,就會被接受。 – 2010-04-01 13:17:02

1

您是否可以不擴展該Web應用程序並在一個Web應用程序上啓用SSL。然後,您可以在需要時鏈接到網站的安全版本。只要他們都在同一個域上,FBA cookie就可以在兩個網絡應用上工作。

+0

謝謝,會試試看。我的印象是認證不會遵循。 – 2010-03-30 17:40:59

0

我想嘗試的另一個選擇是將所有內容保留在同一個Web應用程序中,但要將其設置爲可以通過SSL和非SSL進行訪問。

然後我會寫一個HttpModule,它檢查傳入的請求url並在安全和非安全狀態之間來回重定向。例如,邏輯可能是這個樣子

如果請求的URL與http://mydomain.com/secure

開始 - >重定向到https://mydomain.com/secure

不然,如果請求的URL與https://mydomain.com/general

開始 - >重定向到http://mydomain.com/general

其他

- >什麼也不做,讓請求執行

這種方法的好處是,http模塊將更加可靠,您將不必依靠內容頁面中的鏈接進行切換。