小编ooP*_*ter的帖子

使用WIF在.NET Web Farm中为多个电子商务网站实施SSO?

我认为这是一个相当复杂的问题,所以我会尽力在这里说清楚.

我正在寻找单点登录(SSO)解决方案.我知道很多选项,但是当我添加他们需要满足的标准时,已经排除了大部分选项.以下是标准:

1.)必须将SSO添加到现有的"系统"中.
2.)现有的"系统"由"X"个网站组成.
3.)所有"x"网站都是电子商务.
4.)这些网站全部归Y公司所有,其中95%的系统是内部建造的.
5.)每个"X"个网站都在同一个Web Farm中.
6.)所有网站共享以下组件:

  • DAL(数据访问层)
  • 数据库(购物车,订单,用户,库存等......)
  • 身份验证(WebForms和MVC中的Forms Auth).

7.)为了使当前环境正常工作,机器密钥已经在负载平衡服务器之间同步(并且已经存在了一段时间).
8.)由于流量非常大,因此需要高可用性和稳定性.

所有这些标准都让我走上了WIF和自定义STS的道路,与我们现有的会员认证服务一起使用.像OpenID和其他开源解决方案这样的东西似乎都倾向于跨公司的互操作性; 这是不需要或不想要的.理想的解决方案将是100%内部并允许用户登录网站"1",做他们想做的任何事情然后去网站"2"(也在负载均衡器后面托管,甚至可能在同一个网站上Web服务器,因为用户是网站"1")并已登录.

以下是我查看的替代方法列表以及排除这些方法的相应原因(或者我应该重新考虑其中一些替代方案?).

  • OpenID:由于几个原因,这被排除了,主要是因为我的组织正在寻找"内部"SSO并与外部网站集成或者不希望与外部网站一起使用的ID系统.
  • CAS:在大多数情况下,这似乎也是一个不错的选择.最终它被排除了,因为它使用的技术(Java,Apache,Maven等)将需要额外的努力和资金来理解,实现,支持和扩展(主要是.NET商店).
  • OAuth:似乎更倾向于通过Web服务公开受保护的数据.完全自定义(http://www.codeproject.com/KB/aspnet/CrossDomainSSOModel.aspx):完全自定义的方法可能具有太高的实现时间,并且安全性更受此方法的关注.
  • DotNetOpenAuth:依赖/基于OpenID.

所以问题是:考虑到负载均衡器和已经共享的用户帐户数据,WIF是否会在我们现有的环境中工作,还是有更好的方法?

如果您需要任何澄清,请告诉我.

编辑:

只是为了澄清我希望实现的目标(或者我认为我正在努力实现的目标):

当前设置(在Dropbox上托管的JPEG)
所需的设置(在Dropbox上托管的JPEG)

.net web-farm e-commerce wif single-sign-on

7
推荐指数
1
解决办法
903
查看次数

标签 统计

.net ×1

e-commerce ×1

single-sign-on ×1

web-farm ×1

wif ×1