在网站中集成OpenID而不使用本地数据库用户注册

在网站中集成OpenID而不使用本地数据库用户注册,openid,Openid,我有用户帐户的本地表 用户ID(nvarchar)、密码、电子邮件、姓氏角色等 现在每个子表中都使用UserID。我想在我的站点中启用OPENID注册,稍后将集成本地用户注册功能。我应该将OPENID分类标识符插入本地用户帐户(UserID列)还是为OPENID创建单独的表。在创建单独表的情况下,我没有userid的数据(我没有启用本地用户注册) 请引导我 谢谢。将OpenID标识符放入用户表的另一列中如果将ClaimedIdentifier列放入用户表中,则可以将UserID设置为“int-I

我有用户帐户的本地表

用户ID(nvarchar)、密码、电子邮件、姓氏角色等

现在每个子表中都使用UserID。我想在我的站点中启用OPENID注册,稍后将集成本地用户注册功能。我应该将OPENID分类标识符插入本地用户帐户(UserID列)还是为OPENID创建单独的表。在创建单独表的情况下,我没有userid的数据(我没有启用本地用户注册)

请引导我


谢谢。

将OpenID标识符放入用户表的另一列中

如果将
ClaimedIdentifier
列放入用户表中,则可以将UserID设置为“int-IDENTITY”列,以便SQL server自动生成值,因为您只需要在其中输入一个唯一的数字。您还可以删除密码列,直到添加用户注册(如果您选择这样做)

但是,如果您使用
Users
表的外键创建一个
OpenID
表,那么您最终可以允许您的用户将多个OpenID关联到他们的一个帐户,这有助于他们避免在其提供商暂时关闭或其提供商的帐户被挂起等情况下出现问题


例如,StackOverflow采取了中间立场,允许用户最多将两个声明的标识符与每个帐户关联。

那么USERID呢,我是否应该通过编程生成它。USERID是其他表中的外键。当然,它只是一个id,对任何人或OpenID都不重要