9

我正在为 Symfony 使用 sfOpenID 插件,它不支持 OpenID 2.0。这意味着,例如,人们使用 Yahoo! OpenID 无法登录我的网站。

有一个可与 sfGuard 配合使用的 OpenID 2.0 插件,但我不使用也不打算使用 sfGuard。另外,它还需要安装 Zend 框架,这在我的场景中是多余的。

所以我有两个问题,真的:

  • Symfony 是否有另一个支持 OpenID 2.0 的 OpenID 插件?
  • 使 sfOpenID 支持 OpenID 2.0 所需的 hack 是什么?

我想我可以研究 OpenID 规范并自己破解它,但是,我是一个懒惰的程序员 :)

4

3 回答 3

7

我认为您已经使用 sfOpenID 和 taOpenIDsfGuardPlugin 为 Symfony 的插件提供了所有选项。

但是,如果不详细研究 OpenID 的规范,您可以通过将其中一个 PHP 库 ( http://wiki.openid.net/Libraries ) 放入您的 lib 并连接到 asfUser或您用于身份验证的任何内容来尝试其中一个。还有 OpenID Enabled 库 ( http://openidenabled.com/php-openid/ ),如果您调整错误报告级别以排除一些警告,它仍然使用 PHP4,但与 PHP5 兼容。

有一些教程解释了如何使用 PHP 在您的站点上启用 OpenID:http: //www.saeven.net/openid.htmhttp://www.plaxo.com/api/openid_recipe

更好的是,之后利用这些知识制作一个 sfPlugin

于 2008-11-09T19:21:46.070 回答
1

有一个更简单的方法。JanRain 提供 OpenID(和 facebook)作为服务http://rpxnow.com。比使用库本地化更容易/更快。

于 2008-11-15T23:35:15.457 回答
1

我有(而且我仍然有)同样的问题。首先,没有任何功能完整的 php5 openid 库。唯一的一个被 Zend Framework 附带的那个放弃了。

因此,您要么自己编写(不推荐,大量工作),要么使用 Zend 中的那个(这就是我使用的)。

问题是它被大量嵌入到 Zend 中并且需要很多 ZF 的东西。

也许我会发布一个类似于 taOpenIDsfGuardPlugin 但在没有 sfGuard 的情况下使用的插件,因为它经常被要求(并且我将在我未来的项目中需要它;))

于 2009-01-27T13:11:43.313 回答