SharePoint:公共网站中的https区域

时间:2010-03-29 19:55:06

标签: sharepoint https wss

我正在使用SharePoint(WSS)构建的公共网站。我们需要在网站中添加一个区域,人们可以用信用卡购买物品,显然需要保护区域。

网站正在使用基于表单的身份验证,用户在从https区域来回移动时需要保持登录状态。

我知道如何为新的网络应用程序/网站集启用SSL,但这对我来说不是一个选项,因为该网站已经在线并且我们不希望整个事情得到保护。

我对所涉及的webparts(支付模块,购物车等)的开发很满意,但我无法弄清楚如何在创建网站集时仅创建某些https页面。

您是否拥有部署受保护网页的功能?如果是这样,怎么样?您是否可以拥有启用SSL的区域,但是在不丢失其身份验证(FBA)的情况下将用户重定向到哪个区域?

谢谢!

3 个答案:

答案 0 :(得分:1)

您是否可以扩展Web应用程序并在一个Web应用程序上启用SSL。然后,您可以在需要时链接到网站的安全版本。只要它们都在同一个域中,FBA cookie就可以在两个Web应用程序上运行。

答案 1 :(得分: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等可能需要也可能不需要。这种方法还需要某种方法将请求重定向到适当的协议。

答案 2 :(得分:0)

我会尝试的另一个选择是将所有内容保留在同一个Web应用程序中,但要设置它以便可以通过SSL和非SSL访问它。

然后我会编写一个HttpModule来检查传入的请求URL并在安全状态和非安全状态之间来回重定向。例如,逻辑可能看起来像这样

如果请求网址以http://mydomain.com/secure

开头

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

否则,如果请求网址以https://mydomain.com/general

开头

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

其他

- >什么都不做,让请求执行

这种方法的优点是http模块更可靠,您不必依赖内容页面中的链接来进行切换。