我最近写了一个应用程序,它依赖 OpenID 进行身份验证。如今,许多 Web 应用程序正在转向 OpenID,因为它们 已经 有用户名/密码身份验证方案,OpenID 只是一个附加组件。由于我的应用程序是一个新应用程序,因此当我可以完全依赖 OpenID 进行所有身份验证时,我认为基于用户 ID/密码编写单独的身份验证机制是没有意义的。

但可以肯定的是,当我向客户展示该应用程序后,她问“好吧,我们如何创建用户帐户并重置他们的密码”?从概念上讲,如果用户还没有 OpenID,她不想让他们创建自己的 OpenID。

我对此有一个预先做出的回应,那就是:“您始终可以运行自己的 OpenID 服务器”。我想我并没有对这个答案考虑太多,因为 OpenID 服务器的许多实现都非常原始,需要做很多工作才能在生产中运行。

所以,我的问题是:这里有人有纯粹为了验证自己的用户而运行私有 OpenID 服务器的经验吗?以下是我正在寻找它支持的开箱即用的功能:

  • 能够批量加载用户帐户
  • 通过验证电子邮件重置自助密码
  • 管理功能(锁定/解锁/禁用帐户、故障排除等)
  • 外观漂亮
有帮助吗?

解决方案

有现成的框架。你只需要把它们放在一起。这可以很快完成。

你没有写你的平台,但如果你喜欢使用 php 那么看看“zend Framework”或“php openid”

其他提示

这并没有直接回答他们的问题,但是有多少人上网却没有 Yahoo、Flickr、AIM、WordPress、Myspace、Google 或 MSN 帐户?他们都是 OpenID 提供商。

我认为,对于不使用这些服务的一小部分“净人口”,只需将他们指向 Vidoop 或 MyOpenID,并让他们在已经拥有安全基础设施的人那里获得一个帐户即可。

这是我最初的想法...但该应用程序适用于非互联网极客类型的用户,因此期望他们可能有也可能没有任何上述帐户。

另一件事是:MyOpenID 为您提供了一个简洁、漂亮的 URL,而 Yahoo(例如)则不能。即使您知道某人拥有 yahoo 帐户,您也不能只使用 username.yahoo.com。Google 也是一样 - 您必须首先使用您的 google 帐户激活 blogspot 帐户,并且 然后 您有一个 OpenID,它可能与您的 Gogle ID 相关联,也可能与您的 Gogle ID 不相关。因此,如果您有一个用户列表,甚至 如果 你知道他们都在 google 或 yahoo 上 - 即使这样你也不能对他们的 OpenID url 做出假设

我在自己的应用程序中使用 OpenID,但如果我去找客户,他们提出有关密码和其他内容的问题,我可能会告诉他们提供商会为他们处理这个问题。如果他们不喜欢这个想法,我会向他们收取设置会员系统所需的额外时间。这样你就可以收取更多费用,并且拥有满意的客户。我认为公众在未来几年内不会理解 OpenId。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top