问题标签 [janrain]

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 投票
4 回答
2386 浏览

php - 用于 OpenId 的 Janrain php 库和 google 端点

我使用 janRain Php 库进行 OpenId 和 yadis 发现,无论我做什么,我都会在 user.openid.org 或我自己的提供商之类的东西中工作,但如果我尝试使用 google 端点,我无法获得任何发现信息。

即使我为 janrain 库运行发现示例,我也会得到下一个结果

如果我在 url 之前添加 https:// 也会发生同样的情况。

我的问题可能不是如何让它工作,但如果它真的可能,我还有什么其他选择(在我的网站上运行,项目中不需要时髦的身份验证)。

为什么 openId 如此 #@!#@ 复杂且无证?(注意,我给了 zend_openid 几个小时以获得相同的结果)

0 投票
8 回答
8632 浏览

php - Janrain 的 PHP-OpenID 和 Google/Yahoo

我正在使用Janrain 的 PHP-OpenID 2.1.3,并且我已经设法让它与我尝试过的所有提供商一起工作,除了 Google 和 Yahoo。这里的主要区别似乎是谷歌和雅虎,与大多数其他提供商不同,不使用用户特定的 URL,而是将用户发现框架全部放在他们的末端——这会抛出默认的 Janrain 框架进行循环然后它尝试开始身份验证请求。

从我所看到的看来,可能是 YADIS 发现引发了错误,应该可以绕过该发现,因为该发现位于 Google 或 Yahoo 端,但我不确定。这对我来说都是一次重要的非正式学习经历,而且我没有任何运气找到可以帮助我解决这个问题的文档。任何提示将非常感谢。

编辑:我遇到的具体问题是,当为 Google 或 Yahoo URL 调用 begin() 函数时,我得到一个空返回。该函数位于 Auth/OpenID/Consumer.php 中以供参考。

0 投票
1 回答
92 浏览

php - 从 open_id 表单中检索格式化的 URL

我刚刚使用 PHP janrain 库将 OpenID 添加到我的网站,并且一切正常,但我有一个关于如何做某事的问题。

从用户那里收到 openid_url 后,我将它传递给 openid 库,然后它处理 url 并准备好发送给 OP。如何检索该 URL?

为什么我问是因为我的脚本当前将http://mysite.com和 mysite.com 视为不同的 URL。我知道库规范化了 URL,我只是不知道如何提取它。

我希望我说得通,谢谢你的帮助。

0 投票
1 回答
208 浏览

python - 使用 Python 获取有关 XRI OpenID 的简短人类可读信息?

我希望能够告诉带有他/她的 OpenID 的网站访问者:您是第一次在 mysite 上使用您的 XYZ id - 请创建您的场景名称,其中 XYZ 是一个很好的令牌,很有意义。例如 - XYZ 可以是提供者名称。

我想找到一个适用于标准中定义的 OpenID 的解决方案 - 即适用于XRI类型的 ID - 可扩展资源标识符。

urlparse(如 RichieHindle 所建议的)适用于 url 类型的 openid,但通常不适用于例如“=somename”之类的i-name ID。还有许多其他形式的有效 OpenID 字符串甚至看起来都不像 url。

谢谢。

0 投票
2 回答
1438 浏览

openid - python-openid 上的 OpenID 错误消息

我正在使用来自 Janrain 的 python-openid 库

http://openidenabled.com/python-openid/

我将他们的 Django 示例改编为另一个名为 Web2Py 的框架,它似乎正在工作,但有一些烦人的副作用。

  1. 第一个问题是 sreg(简单注册扩展)和 ax(属性交换)似乎不起作用。我知道 Google 使用 ax,但我的 openID 消费者总是为它们返回 None。

  2. 每当我使用 Google 登录时,它都会在标准输出上显示一条恼人的错误消息。它似乎正在工作,但可能表明存在更大的问题?

    尝试使用存储的发现信息时出错:< openid.consumer.consumer。TypeURIMismatch:在 [' http://specs.openid.net/auth/2.0/server ', ' http://openid.net/中找不到所需的类型http://specs.openid.net/auth/2.0/signon srv/ax/1.0 ', ' http://specs.openid.net/extensions/ui/1.0/mode/popup ', ' http://specs.openid.net /extensions/ui/1.0/icon', ' http://specs.openid.net/extensions/pape/1.0 '] 用于端点 https://www.go ogle.com/accounts/o8/ud' claim_id=None local_id=None canonicalID=None used_yad is=True

  3. 当我打开无状态模式时,谷歌实际上不再显示错误,而是轮到雅虎了:

    从服务器https://open.login.yahooapis.com/openid /op/auth收到“invalidate_handle”

有没有人对这些问题有任何见解?

0 投票
1 回答
483 浏览

php - 如何向 JanRain phpopenid 示例服务器添加 checkid_immediate 支持?

我正在使用基于 JanRain phpopenid 库的 OpenID 服务器。这没什么特别的,只是打了补丁,可以与 Yubico 一次性密码生成器一起使用。它授权正常,但在JanRain 诊断工具中的“Successful checkid_immediate”测试失败。它说 checkid_immediate 需要设置,但我不确定这意味着什么。

我的问题是,JanRain 提出的示例演示是故意简陋的。根据 JanRain 的 Jonathan Daugherty 的说法,“示例服务器不应被视为配备齐全的 OpenID 服务器(即,具有用户帐户和其他状态)。”

不幸的是,弄清楚如何在淡化的服务器示例之上实现 checkid_immediate 有点过头了。谁能给我指点一下如何实现这一目标?谢谢!

0 投票
2 回答
8132 浏览

php - PHP OpenID 中 AX 的示例用法

我正在使用 JanRain 的 PHP OpenID 库。它带有使用 SReg 扩展的示例脚本。但我希望它与谷歌一起工作(它实际上适用于身份验证),但谷歌使用 AX(属性交换)而不是 SReg 来获取额外数据。由于某种原因,JanRain 的库在示例脚本中缺少 AX 支持,并且 AX 脚本中的代码注释超出了我的理解,尽管 SReg 脚本中的注释清晰为 1-2-3。

有谁知道如何在没有太多痛苦的情况下实施 AX?

0 投票
3 回答
1136 浏览

php - 将 JanRain OpenID 库与 Google 一起使用时出现 406“不可接受”错误

我正在使用最新的 Janrain openid 库示例,发现过程似乎与 Yahoo、myopenid.com 和其他人配合得很好......

但我被谷歌端点(https分号//www.google.com/accounts/o8/id)困住了。在我被重定向到谷歌页面之前,Consumer.php 只返回一个 406 apache 错误。

我所有的安装都可以在这里找到:http: //www.coplango.com/vendor/openid/examples/

  • 单击消费者尝试消费者示例,但 discovery.php 以同样的方式失败,证明它发生在发现期间......
  • 您还可以检查 detect.php 以检查我的安装 - HTTP 获取测试失败并显示 503,因为它试图到达返回 503 的地址。休息很好。

我认为这取决于 php-yadis 指定Accept: application/xrds+xml标头,但我检查了代码,并且其他类型也被接受,例如text/htmlapplication/xhtml+xml.

有人遇到过这个吗?

有什么线索吗?

非常感谢你!

0 投票
2 回答
434 浏览

php - 无法使用 google 或 Yahoo OpenID 登录我的项目

大家好,我已经建立了一个 openID 登录系统——就像我们在 stackoverflow 和后端使用的 JanRains 库一样。它工作正常,直到突然之间 - 人们无法使用谷歌或雅虎 openid 登录。IT 不断失败 - 但是任何其他常规 openid 似乎都可以正常工作。这里发生了什么 - 我试图追踪错误,但由于某种原因它无法检索身份验证服务 - 从技术上讲,对于那些熟悉 JanRain 在第 339 行的 AUth/OpenID/Consumer 文件中或在 Auth_OpenID_Consumer :: begin 函数中的人:

对于使用 google 帐户登录的任何人,端点返回 null - 但是其他非 google/非 yahoo 帐户登录.. 这里发生了什么 - 我的网站现在已经上线 :( 我已经后悔实现了 openID 的东西。 ...我第一次尝试使用 Zends openID 库 - 失败了很多次,所以我切换到 JanRain - 它工作了一段时间,但现在它也让我失败了......

0 投票
1 回答
966 浏览

php - OpenID PHP Library Janrain,并将 Auth_OpenID_RAND_SOURCE 设置为 null

我正在考虑将 OpenID 用于即将开展的一个项目。在阅读了有关 Janrain 的 OpenID 的 PHP 实现的一些教程并查看了源代码后,我将其上传到了我的服务器并测试了我的 Google ID 中包含的示例脚本,我收到了一些关于 CryptUtil.php 中的 Auth_OpenID_RAND_SOURCE 未设置的错误适当地。我通过 Google 找到了一个答案,将其定义为 null 而不是默认的 /dev/urandom。我的问题是,这显然不安全,对吧?/dev/urandom 是 linux 中的随机数生成器吗?在我的 Windows 机器上使用 /dev/urandom 来搞乱实现有什么好的替代方法?