标签: lightopenid

如何使用Yii和OpenID登录用户

我已将simpleopenidselectorlightopenid添加到我的Yii Web应用程序中,它会对用户进行身份验证,并返回带有openid数据的URL.下一步是使用OpenID提供程序中的数据在Yii中创建新标识以登录用户.如何用Yii完成?

另外,我认为我需要创建一个openid表来存储openid,还需要将用户添加到我的用户表中.如果用户已拥有帐户,则将openid添加到其用户帐户以防止多个帐户.

有没有人用Yii实现这一切?如果是这样,我会对它是如何完成感兴趣.

openid openid-selector yii lightopenid

6
推荐指数
1
解决办法
2262
查看次数

用...打开一个gmail地址?OAuth的?

我很困惑.

我能够使用LightOpenID使openid登录有点工作.

我所做的就是openid_identity" https://www.google.com/accounts/o8/id?id=xxx".非常令人失望:我也希望得到这个电子邮件地址.

我需要登录(这是openid所做的)知道用户用来登录的谷歌帐户的电子邮件地址.

有功能,$openid->getAttributes()但我得到的只是一个空数组:我猜谷歌不会给我任何其他东西openid_identity.

所以我我应该用OAuth,对吧?我对此毫无头绪.我只发现了可怕的和困惑的文件,要么假装解释一切(我的意思是一切),或者不解释任何东西 .

是的,当然我已经尝试查看之前的帖子,就像我在google上搜索一样.请再读一遍上一段.

php openid oauth lightopenid

5
推荐指数
2
解决办法
2956
查看次数

我应该使用LightOpenID将REALM设置为Google url保持一致,以便在我的数据库中存储?

最近,我注意到,在我的数据库中存储所产生的身份时,谷歌有时会返回一个不同的身份为同一个用户,造成两人数据库条目为单个用户.

经过一番研究后,我发现Google使用$ openid-> realm以及用户名来创建身份.默认情况下,领域成为您网站的URL.使用LightOpenID,我应该将$ openid-> realm设置为使得生成的Google身份保持一致,以便我可以将它们存储在我的数据库中?我可以将'领域'设置为我喜欢的任何东西吗?或者它必须与我的URL相关?

php openid realm lightopenid

3
推荐指数
1
解决办法
1687
查看次数

Janrain OpenId vs lightopenid PHP库

Janrain的PHP OpenID库和LightOpenID的PHP实现之间有什么区别.

一个比另一个更安全吗?

根据Google的最佳做法页面:

正确的OpenID实现必须:

  1. 覆盖加密签名的检查

  2. 检查随机数

  3. 亚迪斯发现

我猜测Janrain的图书馆确实满足了所有这些要求,因为谷歌推荐了这个库,但LightOpenID实现了1和2.

php openid janrain google-openid lightopenid

3
推荐指数
1
解决办法
803
查看次数

如何将OpenID提供程序标识为需要定向标识?

我正在尝试扩展LightOpenID PHP库以"发现"身份提供者需要定向身份.这应该很容易,因为图书馆编写得非常好并且非常干净,但我不知道如何识别这些类型的提供者.我试过几件事:

  • 我查看了关于这个主题的OpenID规范,但空手而归.
  • 查看了PHP OpenID库,但无法弄清楚在发现过程中如何收集此信息.
  • 通过在LightOpenID中注入一些代码但没有看到任何有用的东西来转储来自服务器的所有数据(标题和内容).
  • 自然而然地搜索了Google和Stackoverflow.

提供商如何将自己标识为需要"定向身份"身份验证?当然,在某个地方有一个精心定义的规范.

有谁知道我可以在这里找到更多?

php openid lightopenid

2
推荐指数
1
解决办法
771
查看次数

使用LightOpenID登录/注销用户状态

我试图使用LightOpenId为我的网站登录/注销用户.这工作正常,但我的问题是"如何跟踪用户登录/注销状态并采取相应的操作".

我希望用户只有在用户登录时才能访问我的网站功能,并在用户注销时重定向到登录页面.

提前致谢.

php lightopenid

1
推荐指数
1
解决办法
1458
查看次数

在Localhost中测试LightOpenID

我正在使用LightOpenID在我的PHP Web应用程序中启用Google身份验证.

但是,当我在本地服务器上测试相同时,我收到以下错误

( ! ) Fatal error: Uncaught exception 'ErrorException' with message 'You must have either https wrappers or curl enabled.' in C:\wamp\www\speakerdb\openid.php on line 94
( ! ) ErrorException: You must have either https wrappers or curl enabled. in C:\wamp\www\speakerdb\openid.php on line 94
Call Stack
#   Time    Memory  Function    Location
1   0.0006  366848  {main}( )   ..\index.php:0
2   0.0034  648640  LightOpenID->__construct( ) ..\index.php:4
Run Code Online (Sandbox Code Playgroud)

这在我的远程服务器上运行良好.我将在我的应用程序的每个页面中使用LightOpenID来检查用户是否已登录.我尝试给"localhost"作为域名,但得到相同的错误.

我启用了curl而不是我的wamp服务器但是当启用curl时,带有LightOpenID的页面不会运行.

php openid wampserver google-authentication lightopenid

0
推荐指数
1
解决办法
2234
查看次数