使用DotNetOpenAuth实现SSO

时间:2013-09-22 14:58:55

标签: c# .net dotnetopenauth

我的任务是在多个网站上实施SSO,并就最佳做法等问题提出一些问题。

主.NET站点有一个现有的用户表,其中包含数千个注册用户,这些用户应该可以登录到其他一些“姐妹”用户表。网站,其中一些可能是使用PHP构建的。从查看示例看,这似乎是OpenIdWebRingSsoProvider,其他站点将实现OpenIdWebRingSsoRelyingParty代码。这是对的吗?

我遇到的另一个问题是,如果用户使用Facebook登录主站点,然后决定使用Google登录其中一个姐妹站点,系统将如何知道这应该是同一个用户。我对系统的这个方面感到有些困惑。

1 个答案:

答案 0 :(得分:1)

通常,您可以创建自己的用户群,用户可能只有很少的社交帐户与您的本地用户相关联。

这意味着使用社交帐户登录的用户应该链接到本地​​帐户,该帐户会在提供本地凭据时设置本地帐户,或者如果他没有本地帐户则创建本地帐户。一旦用户登录,也拥有本地帐户,他可能会明确地将其本地帐户链接到其他社交帐户。

我理解这听起来有些开销,但这是一种常见的模式。