问题标签 [lightopenid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1421 浏览

php - Google 是唯一需要“identifier_select”的 OpenID 提供商吗?

我正在用 PHP 开发一个 OpenID 消费者,并且正在使用出色的 LightOpenID 库 ( http://gitorious.org/lightopenid )。基于示例客户端脚本中的代码,我已成功创建了一个使用者。但是,我遇到了一个障碍:Google 要求将openid.identityandopenid.claimed_id设置为"http://specs.openid.net/auth/2.0/identifier_select"(请参阅此处)。如果我这样做,它会起作用,但其他提供商(即 AOL)不会。

以下是我的问题:

  1. Google 是不是一个极端案例——它是唯一identifier_select需要的 OpenID 提供商,与 OpenID 规范相反吗?
  2. LightOpenID 库有缺点吗?
  3. 我对 OpenID 如何工作的理解不正确吗?
  4. 如果谷歌不是唯一需要identifier_select的供应商,那么我将硬编码其中的数量有限,还是有办法通过 OpenID 规范来确定这一点?

我是 OpenID 内部的新手,所以如果这是一个愚蠢的问题,我不会感到惊讶。在互联网上搜索后,我无法找到有关此主题的任何信息。

0 投票
1 回答
809 浏览

php - 如何将 OpenID 提供者识别为需要定向身份?

我正在尝试扩展LightOpenID PHP 库以“发现”身份提供者需要定向身份。这应该很容易,因为该库编写精美且非常干净,但我不知道如何识别这些类型的提供程序。我尝试过的几件事:

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

提供商如何将自己标识为需要“定向身份”身份验证?肯定有一个仔细定义的规范……某处。

有谁知道我在哪里可以找到更多关于这方面的信息?

0 投票
2 回答
3085 浏览

php - 如何从具有 LightOpenID 的提供商处获取帐户数据?

我在使用名为LightOpenID的小型 OpenID 库时遇到问题 。我可以对几乎所有提供者进行身份验证,但我不知道如何从提供者那里获取数据。我只得到 Array(),即使使用 print_r()。

0 投票
4 回答
2985 浏览

php - 使用... openid 获取 gmail 地址?认证?

我越来越糊涂了。

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

我所做的只是openid_identity诸如“ https://www.google.com/accounts/o8/id?id=xxx”之类的。非常令人失望:我也期待得到电子邮件地址。

我需要登录(这就是openid 所做的)知道用户用于登录的google 帐户的电子邮件地址。

有这个函数$openid->getAttributes(),但我从中得到的只是一个空数组:我猜谷歌不会给我任何东西openid_identity

所以我我应该使用OAuth,对吧?我对此一无所知。我只发现了可怕而混乱的文档,要么假装解释一切(我意思是一切),要么根本无法解释任何 事情

是的,当然我已经尝试查看以前的帖子,就像我在谷歌上搜索一样。请再读一遍上面的段落。

0 投票
1 回答
1552 浏览

php - OpenID 发现方法 - Yadis VS HTML

最近,我开始编写自己的 PHP OpenID 消费类,以便更好地理解 openID。作为指导,我一直在引用 [LightOpenID 类][1]。在大多数情况下,我了解代码以及 OpenID 的工作原理。在查看作者的discover功能时,我感到困惑:

好的,这是我理解的逻辑(基本上):

  1. 检查是否$url向您发送了有效的 XRDS 文件,然后您对其进行解析以找出 OpenID 提供者的端点。
    • 据我了解,这称为 Yadis 认证方式。
  2. 如果未找到 XRDS 文件,请检查响应正文中是否存在包含端点 url 的 HTML <link> 标记

什么。这。见鬼。

我的意思是认真的?本质上是屏幕抓取响应并希望您找到具有适当属性值的链接?

现在,不要误会我的意思,这门课就像一个魅力,太棒了。我只是无法理解用于发现端点的两种不同方法:XRDS (yadis) 和 HTML。

我的问题

  1. 这些是发现过程中使用的仅有的两种方法吗?
  2. 一个只在 OpenID 1.1 版中使用,而另一个在 2 版中使用?
  3. 支持这两种方法是否至关重要?
  4. 我遇到 HTML 方法的站点是 Yahoo。他们疯了吗?

再次感谢你们的时间。如果我听起来有点吃惊,我深表歉意,但是当我开始了解正在采取哪些措施来寻找终点时,我真的对这种方法感到震惊。

0 投票
4 回答
13440 浏览

php - 使用 LightOpenID 登录用户

您好
,我已经在几个小时前下载了 LightOpenID (http://gitorious.org/lightopenid),但仍然不知道如何使其工作。
我把这个谷歌示例保存在test.php文件 中

init.php 是我页面的初始化文件(常量、类、函数、数据库连接等)。
运行此代码后,我得到标签为“使用 Google 登录”的按钮,然后按下它

提供有关 $openid 对象的一些信息

LightOpenID 对象 ( [returnUrl] => http://kur.com/openid.php [必需] => 数组 ()

)

...没什么特别的...就是这样...
我花了很多时间在谷歌搜索教程,但甚至找不到。你能帮我么。
用户如何登录?
我必须从哪里获取登录的用户信息(如用户名、邮件)?
我从来没有使用过开放 ID,我很困惑....
在此先感谢

0 投票
1 回答
1021 浏览

openid - Lightopenid + Google Apps + validate() = 未找到服务器!

我正在使用 LightOpenID 并且有一个测试页面,它是随附的 example-google.php 的近似副本(我投入了一些回声进行调试)。单击“使用 Google 登录”按钮会将我带到 Google。我使用有效的 Google Apps 电子邮件地址登录,然后返回到我的页面。但是,当它尝试验证claim_id 时,我得到一个“未找到服务器!” 信息。

我已经在谷歌上搜索了该短语以获取指导,但大多数回复只是指向 gitorious checkins 的链接。我深入研究代码,使用 fwrites 显示代码按以下顺序执行...

(由于我输入的所有调试代码,我的行号可能有点偏离......)

openid.php:validate() 被调用。在 validate() 中,大约第 568 行是这一行...

此行之后,$server 为空,即''。

我可以证明在发现($url)的开头,变量

问题是调用 htmlTag() 时没有在第 364 行 (openid.php) 设置 $server。为 $content 抓取相同的 $url 但该 URL 返回 404,然后 htmlTag() 中的 pregs 失败

$url 不正确吗?它直接从“openid_identity”设置,我认为它来自 Google Apps。

这是成功登录 Google Apps 后返回的 URL。

我是 OpenID 的新手,因此非常感谢您在此处指出正确方向的短语或链接。

谢谢,埃里克 B。

0 投票
2 回答
2185 浏览

php - php中的简单openID

我正在使用 LightOpenID,虽然它很轻,但它不是很容易理解,而且它没有 wiki...

他们提供的示例文件如下(对不起,拉长的帖子),我不明白为什么它两次实例化 LightOpenID?

如果有人真的觉得有帮助,我会尝试将其添加到我现有的脚本中。我怎样才能做到当 $openid->validate() 返回 true 时,我可以将 $sql_answer 保存到数据库中?

0 投票
1 回答
735 浏览

php - 无法使用 lightopenid 检索雅虎电子邮件

我正在尝试使用 LightOpenID 合并 openid 身份验证。我修改了 example-google.php 中的发现 url 以与 yahoo 集成!但我没有得到任何属性(我至少能够用谷歌获取电子邮件 ID。)。

http://pastebin.com/08RzvsGy

0 投票
2 回答
1291 浏览

php - 重定向回来时禁止使用 LightOpenID

我正在尝试使用 lightOpenID,它应该很简单,并且上传文件然后测试它是否有效。当我使用 example-google.php 时,我会单击登录按钮,第一次它要求我登录 Google 并允许/记住我正在构建的网站。然后它重定向回 example-google.php?login 和大量属性。但该页面显示“禁止访问。您无权访问此服务器上的 path/to/folder/example-google.php。” 如果我删除 url 中包括 ?login 在内的属性,那么我会得到“使用 Google 登录按钮”,很明显我的文件权限是正确的。

如果我从现在开始单击该按钮,它会立即将我重定向到禁止页面,因此很明显 Google 会记住我已登录并使用登录名对我的网站感到满意。

我为此绞尽脑汁,尝试寻求帮助和各种方法。任何帮助表示赞赏,但我接近放弃 openid 的地步(因为其他库似乎更难以实施)。