标签: janrain

PHP OpenID中AX的示例用法

我正在使用JanRain的PHP OpenID库.它附带了使用SReg扩展的示例脚本.但我希望它可以与谷歌合作(实际上它适用于auth),但Google使用AX(属性交换)代替SReg来获取其他数据.出于某种原因,JanRain的库在示例脚本中缺少AX支持,并且AX脚本中的代码注释不在我的理解中,尽管SReg脚本中的注释清楚为1-2-3.

有没有人知道如何实施AX而不会太痛苦?

php openid janrain

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

Janrain的PHP-OpenID和谷歌/雅虎

我正在使用Janrain的PHP-OpenID 2.1.3,并且我已经设法让它与我尝试过的所有提供商合作,除了Google和Yahoo.这里的主要区别似乎是谷歌和雅虎,与大多数其他供应商,不使用用户特定的URL,而是让用户发现框架都在他们的终端-它抛出的默认Janrain框架为一个循环,然后它尝试开始auth请求.

从我所看到的情况看起来可能是YADIS发现错误,因为发现是在谷歌或雅虎的结尾,所以应该可以绕过它,但我不确定.对我来说这对我来说都是非常非正式的学习经历,而且我没有找到可以帮助我解决这个问题的文档.任何提示将非常感谢.

编辑:我遇到的具体问题是,当为Google或Yahoo URL调用begin()函数时,我得到一个null返回.此功能可在Auth/OpenID/Consumer.php中找到,以供参考.

php openid yahoo janrain

10
推荐指数
2
解决办法
8578
查看次数

php-openID不适用于Yahoo

我正在尝试使用php-openid库在我的网站中实现openID.其包中的基本消费者示例不适用于Google和Yahoo.我在这里找到了Google解决方案: 在PHP OpenID中使用AX的示例, 但它仍不适用于Yahoo! .我怎么能让它有效?

php openid janrain yahoo-oauth

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

迁移远离社交登录提供程序

如果我要完全整合Janrain Social LoginOneall,那么迁移到我自己的自定义系统的障碍是什么?

例如,许多开发人员使用Janrains社交插件(以及许多其他人)因为他们没有时间来提供所有代码来提供他们自己的解决方案,或者因为它快速方便.

但是,在未来的某个地方,也许当开发人员有更多时间时,他可以使用OpenID选择器和openid库(例如stackoverflow自己的解决方案)编写自己的解决方案.此外,Janrain和Oneall变得昂贵,最好让你的前几千用户,但在你突然增加用户注册后,它变得非常昂贵(特别是如果你只使用社交登录而不是其他社交功能)

我看到的问题是,在我的Facebook应用程序中,我给FB应用程序的网站URL(例如oneall)是' http://myapp.api.oneall.com/ ',它将处理所有验证并链接帐户然后重定向到我的网站回调网址.

但是,如果我用我自己的解决方案替换Oneall(网站URL会改变),会发生什么?验证将变为无效,不是吗?用户将不得不再次接受权限?我如何成功迁移?

我希望我已经解释得那么好了.也许这是微不足道的,但一些澄清将非常感激.我想确保我没有被Oneall或Janrain束缚.

openid social-networking janrain

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

如何在不请求SReg字段的情况下区分/识别具有OpenID的用户?

我一直在玩JanRain OpenID PHP库,主要是跟随我在ZendZone上找到的教程.

如何区分用户 - 尤其是谷歌用户,他们最终都使用相同的OpenID网址,https://www.google.com/accounts/o8/id

基本上,我现在可以检测到他们有一个OpenID帐户...他们已经成功通过身份验证...但我的应用程序仍然不知道他们是谁; 只是他们认证了.

为了区分用户,本教程使用"简单注册请求"来请求用户的OpenID提供商的电子邮件 - 然后使用电子邮件地址来查看这是否是返回用户.

它对我不起作用,显然不会与某些提供商合作,所以当我偶然发现一个功能时我很兴奋getDisplayIdentifier.

require_once "Auth/OpenID/Consumer.php";
require_once "Auth/OpenID/FileStore.php";
// create file storage area for OpenID data
$store = new Auth_OpenID_FileStore('/wtv');
$consumer = new Auth_OpenID_Consumer($store);
$oid_response = $consumer->complete("http://example.com/oir_return");
if ($oid_response->status == Auth_OpenID_SUCCESS) {
    $hopefullyUniqueUserID = $oid_response->getDisplayIdentifier(); // I assumed this would be a relatively permanent way to identify the user...
                                           // I was wrong.
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,经过几个小时后,getDisplayIdentifier变化返回的值.

php openid authentication janrain

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

免费软件库拥有像Janrain Engage(以前的RPX)这样的登录系统

Janrain Engage(以前的RPX)看起来非常不错,但是在freesoftware下有类似的东西吗?

openid login rpx rpxnow janrain

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

PHP OpenID不适用于谷歌/雅虎和'黑客'修复它......它们安全吗?

我一直在尝试使用OpenID,并设置了一个示例网页,以便使用我的OpenID帐户进行访问.我正在使用JanrainPhp OpenID库,但它没有使用我的Google帐户.一个小小的研究让我想到了这个问题,这表明问题在于Google使用https和......

...可能在您的PHP服务器上设置了发出HTTPS请求的设置.检查以确保安装了ca-certificates软件包.

在同一个帖子中,有人链接到我已部署并已成功使用我的Google帐户的图书馆黑客版本.其他问题还有其他的自定义来解决类似的问题(Janrain的PHP,OpenID和谷歌/雅虎,PHP,OpenID的不与雅虎合作,在PHP的OpenID AX的用法示例 ...)

我对安全性不太热,所以我问; 有没有人知道不使用这些黑客版本的原因?

原始库是否具有这些黑客在设计中修复的任何缺点,因此黑客是一个潜在的安全漏洞?

那里有一个合格的加密人员,他们已经看过这些解决方案并且"走了大卫·查姆的胡子!不! "

如果是这样 - 因此我不应该使用任何这些黑客 - 我如何检查我"安装了ca-certificates软件包"?

php security openid janrain google-account

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

user_signed_in?总是返回false

我一直关注这些轨道广播

http://railscasts.com/episodes/209-introducing-devise && http://railscasts.com/episodes/233-engage-with-devise 进行用户身份验证,但每当我试试,看用户是否登录,反应总是错误的.

我尝试了很多东西来尝试修复这个问题.我尝试了不同版本的devise和devise_rpx_connectable.我尝试在配置文件中更改设置.我尝试用不同的宝石版本运行'rails generate devise:install'一堆.

奇怪的是,当我将RPXNow.api_key更改为虚假的东西时,我没有收到错误,这是意外的行为.

这是我的application.html.erb文件中的代码:

<% if user_signed_in? %>
    Signed in as <%= current_user.email %>. Not you?
    <%= link_to "Sign out", destroy_user_session_path %>
<% else %>  
    <%= link_to_rpx "Sign in", user_session_url %>
<% end %>
<%= javascript_include_rpx(root_url) %>
Run Code Online (Sandbox Code Playgroud)

这是我的用户模型user.rb文件中的代码

class User < ActiveRecord::Base
    devise :database_authenticatable, :registerable,
           :recoverable, :rememberable, :trackable, :validatable, :rpx_connectable

    attr_accessible :email, :password, :password_confirmation

    validates :email, :uniqueness => true
    .....other stuff....
end
Run Code Online (Sandbox Code Playgroud)

这是我的Gemfile的一部分:

gem 'rails', '3.2.6'

gem 'devise','2.0.0'
gem 'devise_rpx_connectable'
Run Code Online (Sandbox Code Playgroud)

这将获得devise_rpx_connectable gem版本0.2.2

这是我的initializers/devise.rb文件中的最新内容:

Devise.setup …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails rpx janrain devise

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

如何在Janrain RPX中获得"返回网址"

如何使用Janrain RPX登录获取以前的URL?

我正在使用Asp.Net MVC来请求.

model-view-controller asp.net-mvc janrain

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

使用php读取Json数据响应

如何使用php读取JSON数据响应?响应t来自第三方进行用户身份验证.首先,我只想要displayNamepreferredUsername数据.

Json的回应:

 {
      "stat": "ok",
      "profile": {
        "providerName": "testing",
        "identifier": "http://testing.com/58263223",
        "displayName": "testing",
        "preferredUsername": "testing",
        "name": {
          "formatted": "testing"
        },
        "url": "http://testing.com/testing/",
        "photo": "https://securecdn.testing.com/uploads/users/5826/3223/avatar32.jpg?1373393837",
        "providerSpecifier": "testing"
      }
    }
Run Code Online (Sandbox Code Playgroud)

php json janrain

3
推荐指数
2
解决办法
3万
查看次数