使用 DotNetOpenAuth 实现 SSO
本文关键字:SSO 实现 DotNetOpenAuth 使用 | 更新日期: 2023-09-27 18:32:23
我的任务是在我们的许多站点上实施SSO,并且对最佳实践等有很多问题。
主.NET站点有一个现有的用户表,其中包含数千个注册用户,这些用户应该能够登录到许多其他"姐妹"网站,其中一些可能是使用PHP构建的。从示例来看,这似乎是OpenIdWebRingSsoProvider,其他站点将实现OpenIdWebRingSsoRelyingParty代码。这是对的吗?
我的另一个问题是,例如,如果用户使用Facebook登录主站点,然后决定使用Google登录其中一个姐妹站点,系统如何知道这应该是同一个用户。我对系统的这一方面有点困惑。
通常,您可以创建自己的用户群,其中用户可能很少有与您的本地用户关联的社交帐户。
这意味着使用社交帐户登录的用户应链接到本地帐户,该帐户限制提供本地凭据的本地帐户或创建本地帐户(如果他没有本地帐户)。一旦用户登录,也拥有本地帐户,他可能会将其本地帐户显式链接到其他社交帐户。
我知道这听起来有点开销,但这是一种常见的模式。