我正在使用OmniAuth在我的应用程序中访问Facebook。我正在使用fb_graphgem:https://github.com/nov/fb_graph发布到Facebook。我在Heroku上为此应用程序运行omniauth-0.3.0。当用户稍后登录时,我在创建用户时保存的token会更改。创建用户代码classSessionsController"Signedin!"end用户模型是:defself.create_with_omniauth(auth)create!do|user|user.provider=auth["provider"]user.uid=auth["u
我正在开发一个使用devise和omniauth并遵循https://github.com/plataformatec/devise/wiki/OmniAuth%3A-Overview中给出的示例的Rails3应用程序它适用于Facebook帐户,但当我尝试添加Twitter身份验证时,我收到“401未经授权”的响应。为了追踪问题,我将api.twitter.com的URL切换为http并转储了网络流量,它看起来像是两次POST到/oauth/access_token。我第一次收到200响应,第二次收到401。在这两者之间,它使用“GET/1/account/verify_creden
我正在使用“omniauth-openid”gem来实现OpenID登录。在我的OmniAuth回调方法中,我做了这样的事情(它被简化但传达了重要的细节):defgoogleoauth=request.env['omniauth.auth']if@user=User.find_by_email(oauth.info.email)sign_in(@user)andredirect_to'/dashboard'endend这实际上与GitHub上的OmniAuth文档向您展示的相同;但我觉得它很不安全。攻击者只需手动更改回调URL中的info.email参数,他们就可以以任何其他用户身份登
我正在尝试向我的应用程序添加open-id功能,为此我正在使用omniauth和omniauth-openidgems。我已经完成了安装步骤,将它作为中间件添加到初始化程序中,require'omniauth-openid'require'openid/store/filesystem'Rails.application.config.middleware.useOmniAuth::Builderdoprovider:open_id,:store=>OpenID::Store::Filesystem.new('/tmp')endandling回调的路由match'/auth/:prov
我在SO上找到了类似的线程,但没有一个帮助我解决了这个问题。我的路线如下:devise_for:usersdopost'/users'=>'registrations#create',:as=>'user_registration'enddevise_for:users,:controllers=>{:omniauth_callbacks=>"users/omniauth_callbacks"}我也试过:devise_for:users,:controllers=>{:omniauth_callbacks=>"omniauth_callbacks"}但我还是得到了Theaction'f
我浏览了很多GoogleOpenID身份验证的Rails/Rails示例,但没有一个能正常工作。它们中的大多数都不起作用,因为它们已经过时了。甚至omniauth也不是出于其他原因。有人有现在可以正常工作的RubyRackWeb应用程序的工作示例吗? 最佳答案 我不久前fork了一个并在GitHub上弹出了它,名为rails3-mongoid-omniauth.它允许您使用多种方法进行身份验证。它可以证明在Heroku上的Bamboo堆栈上运行Rails3.0.x。我还没有更新它,但它应该给你一些见解。一些关键文件是:omniaut
我一直在尝试使用RSpec测试OmniAuth,但它没有奏效。在spec_helper.rbOmniAuth.config.test_mode=trueOmniAuth.config.add_mock(:twitter,{:uid=>'12345'})并且在spec/requests/static_pages_spec.rbdescribe"forsigned-inusers"dobeforedovisit"auth/twitter"endit{shouldhave_content("Logout")}end然后出现以下错误。Failure/Error:visit"auth/twitt
通过对gitlab进行一些修改,我能够通过omniauth-openidgem添加对gitlab的openid支持,如下所述:http://rahul-ghose.blogspot.in/2013/12/setup-gitlab-openid-authentication-with.html在使用此github存储库添加openid-connect支持时,我尝试遵循类似的模式:https://github.com/jjbohn/omniauth-openid-connect这是我做的:我将以下内容添加到config/initializers/devise.rbconfig.omniau
我们的应用程序使用Devise进行注册,并与用户模型和配置文件模型完美配合。将表单中的注册信息保存到Users表中,并使用其他信息在SQL上的Profiles表中创建配置文件并嵌套user_id。OmniauthFacebook正在努力将内容保存到User模型,但我想像Devise注册那样将从FacebookAuth获取的名称和用户名保存到Profile模型。TABLE用户|id|email|encrypted_password|reset_password_token|reset_password_sent_at|remember_created_at|sign_in_count|c
我目前正在研究基于OpenID的身份验证系统。我在Ruby工作,我使用ruby-openid图书馆。目前,对于我的测试,我使用fakeweb伪造一个openid消费者和服务器并检查一切是否正常。但我不喜欢我做事的方式。而且我相信会有更好的方法来做到这一点。所以我的问题是:是否有人已经为openid服务器编写了测试?你用过什么? 最佳答案 它们还不能离线使用,但是在http://test-id.org上有大量针对提供商和依赖方的测试。.OpenID基金会赞助了许多此类测试的开发。他们测试互操作性和一些安全性。