我一定是个傻瓜,因为我在ASP.NET上的OpenID上看过的所有文章都让我对这个问题感到困惑。我很确定我理解这里涉及的概念,我对事情的后端看起来有点模糊。
所以新用户来到我的网站并希望创建一个帐户。这里出现了大量问题:
我在这里缺少什么?我通常都非常聪明,但对于我的开发人员智能而言,这个区域对于超人来说就像是氪星石。提前谢谢!
亚当
答案 0 :(得分:5)
想象一下,用户本身就是一个sql“table”(该表包含他的“凭据”),并且您拥有一个特定于您拥有的网站的个人资料数据表。 OpenID url是一个“外键”,用于“连接”这两个表。您必须向自己证明他在接受之前确实拥有该OpenID网址(或将其与您的私人资料数据相关联)。您实际上是“离岸外包”您网站的身份验证部分。
最终,您使用openid客户端库在您的网站上为您完成工作。他们注册为正常填写“全名”,年龄,“等等(无论你想要什么),但他们提供了一个openid url而不是用户名/密码。图书馆负责验证他们真的拥有它。必须相信这个库才能做到这一点。然后你用那个openid存储你的所有个人资料数据。完成。
虽然您可以提供自己的openid提供程序,但此时此功能并不值得。那里已经有很多了。你可以做的是提供一个传统的用户名/密码INSTEAD of openid。 openid的想法是你向提供商注册ONCE,然后证明你拥有该网址到任何想用它来识别你的网站(而不是用户名/密码)。
有意义吗?
-Oisin
答案 1 :(得分:5)
此页面是在网站上实施OpenId的分步教程。我相信它会回答你关于添加它的机制的所有问题。
A Recipe for OpenID-Enabling Your Site
如果用户没有OpenId,我只允许他们“正常”注册,存储他们的凭据供本地使用。除非您有商业案例,否则无需增加成为OpenID提供商的额外复杂性。