0

我最近经常看到你可以将多个 openid 分配给一个用户身份。

  • a) 这是否有意义,或者您是否会为一个配置文件只分配一个 OpenID?
  • b) 您将如何在 Zend Framework MVC 环境中实现这一点。你有代码示例/教程吗?

到目前为止我的想法:

我为 asp.net 找到了类似的东西:http ://www.west-wind.com/weblog/posts/2009/Sep/17/Integrating-OpenID-in-an-ASPNET-MVC-Application-using-DotNetOpenAuth

  • 数据库模型:用户配置文件的表和分配给用户(MySQL)的 openid 的第二个表。
  • 登录过程:
  • 一种。使用 Zend_Auth_Adapter_OpenId + 登录(从 OpenId 获取新用户的配置文件信息)
  • 湾。检查用户是否存在。如果没有,则从 OpenId 配置文件创建用户并将用户重定向到配置文件屏幕以确认用户信息
  • C。如果用户存在,请确认 openid 并从数据库中获取用户配置文件。
  • d。保护 Zend_Auth 模型中的所有信息和业务逻辑,可以从整个应用程序中轻松访问它

由于我在 Zend 方面没有经验,我将非常感谢有关如何扩展 zend auth 控制器以满足此需求的提示?如果有人可以为我提供一些代码示例或教程,那就更棒了。

谢谢!

4

1 回答 1

1

这是否有意义,或者您是否会只为一个配置文件分配一个 OpenID?

您需要记住 OpenId 是分布式的,这意味着您不控制登录服务。当用户的主要 OpenID 提供程序停机时,用户无法登录您的应用程序 - 尽管您的服务器运行良好。

让用户提供多个 OpenId 可以让他们最大程度地降低无法访问您的应用程序的风险。


我一直在为我的宠物项目 SemanticScuttle 考虑同样的问题,我肯定会为一个用户实现多个 OpenId。

于 2011-08-02T19:40:13.347 回答