Tag: 身份validation

设计错误后重定向

在Devise中注册和忘记密码视图时,如果出现错误,它会将您重定向到父页面。 因此,在注册页面( /users/sign_up )上,如果出现错误,它会将您重定向到/ users并显示错误。 在忘记密码页面( /users/password/new )上,如果出现错误,它会将您重定向到/users/password并显示错误。 如何更改它以使其与登录页面完全相同,如果出现错误,它将保留在同一页面上并显示错误。 我查看了Devise并找不到重定向的位置。 这是我的Devise路线: devise_for :users, :skip => [:sessions] as :user do get ‘signin’ => ‘devise/sessions#new’, :as => :new_user_session post ‘signin’ => ‘devise/sessions#create’, :as => :user_session get ‘signup’ => ‘devise/registrations#new’, :as => :new_user post ‘signup’ => ‘devise/registrations#create’, :as => :create_user_session delete ‘signout’ => ‘devise/sessions#destroy’, :as => :destroy_user_session get […]

Devise中的ArgumentError :: RegistrationsController#新错误的参数个数(2个为0..1)

我跟随Ryan bates RailsCast的设计和omniauth(第235集 – 设计 – 和 – omniauth – 修订版)。 当我尝试使用twitter登录时,我不断收到标题中的错误。 def self.new_with_session(params, session) if session[“devise.user_attributes”] new(session[“devise.user_attributes”], without_protection: true) do |user| user.attributes = params user.valid? end 完整追踪: C:/Ruby200-x64/lib/ruby/gems/2.0.0/bundler/gems/mongoid-fe7f43430580/lib/mongoid/document.rb:106:in `initialize’ devise (3.0.0.rc) lib/devise/models/confirmable.rb:46:in `initialize’ app/models/user/user.rb:58:in `new’ app/models/user/user.rb:58:in `new_with_session’ devise (3.0.0.rc) app/controllers/devise/registrations_controller.rb:86:in `build_resource’ devise (3.0.0.rc) app/controllers/devise/registrations_controller.rb:7:in `new’ actionpack (4.0.0.rc1) lib/action_controller/metal/implicit_render.rb:4:in `send_action’ actionpack (4.0.0.rc1) lib/abstract_controller/base.rb:189:in `process_action’ actionpack […]

如何设置只有用户已登录时才设计RegistrationsController来显示sign_up页面?

我试图通过谷歌和SO在这里找到解决方案但是找不到…… 这是唯一的问题。 它只有一个答案,它已被接受,但对我不起作用……这是我的代码: class RegistrationsController < Devise::RegistrationsController before_filter :authenticate_user! def new puts "Method new was called" super end end 当我没有登录localhost:3000/sign_up页面正常显示,并且打印了Method new was called 。 如果我还没有登录,我希望控制器将我重定向到sign_in页面。当然我可以用new方法检查它并重定向,但这不是一个好的解决方案……我确信有更优雅的方式。 我甚至尝试使用prepend_before_filter :authenticate_user! 但它也不起作用。 编辑 我在routs.rb中为这个控制器定义了路由 devise_for :users, :controllers => { :sessions => “sessions”, :registrations => “registrations” }

Ruby on Rails的SAML 2.0 SSO?

我在哪里可以为SAML 2.0 SSO挖掘Ruby或Ruby on Rails库。 我有一组要构建的企业应用程序,但需要从中央身份validation系统进行联合登录。 我在Microsoft .Net环境中使用过SAML 1.1和SAML 2.0,但还没有看到一个处理Ruby on Rails的SAML提供者和消费者的库。 有人可以指出我正确的方向或告诉我,我是否需要自己建立图书馆?

无法使用has_secure_password,password_digest错误

晚上好。 我有个问题。 我正在使用has_secure_password ,因此我有一个错误undefined method password_digest =’for#`, 但我没有这种方法! 请帮忙,不知道该怎么办。 我读了如何解决这个问题,但它没有帮助我( 这是我的用户模型。 如果可以的话请帮忙。 class User :create before_create { generate_token(:auth_token) } def send_password_reset generate_token(:password_reset_token) self.password_reset_sent_at = Time.zone.now save! UserMailer.password_reset(self).deliver end def generate_token(column) begin self[column] = SecureRandom.urlsafe_base64 end while User.exists?(column => self[column]) end end

跨应用/服务器的Rails身份validation

我一直在开发我的rails应用程序,同时尽可能保持模块化。 我正在尝试将下面的不同部分实现为服务。 举个Facebook的例子: a)允许用户拥有墙壁,post等的MainApp 。 b)存储照片的PhotoApp ,允许用户查看他的照片等。这是一个独立的应用程序,它将具有可由MainApp使用的REST API。 我正在考虑将OAuth用作单点登录解决方案(如本教程中所述http://blog.joshsoftware.com/2010/12/16/multiple-applications-with-devise-omniauth-and-single-sign-on / )其中每个应用程序将通过OAuth授权,并将基于cookie访问当前用户会话。 第一个问题:这是可行的解决方案吗? 第二个问题:我希望能够从MainApp服务器(而不是用户的浏览器)调用PhotoApp API。 如何在这种情况下进行身份validation? 第三个问题:如果说我有一个使用node.js的服务,它将如何工作?

Ruby on Rails中的OpenID身份validation

我是Ruby on Rails的新手,但我创建了几个小应用程序。 无论如何,我真的对OpenID感兴趣,我想在Rails应用程序中实现OpenID身份validation和一些Sreg内容。 我所做的所有研究都提出了过时或只是不适合我的文章。 因为我对Rails这么新,所以我很难调试这些问题…… 在Rails中实现OpenId的最佳方法是什么?

open_id_authentication – “OpenIdAuthentication.store为零。 使用内存存储。“问题

我正在尝试使open_id_authentication插件正常工作。 最初是用authlogic做的但是放弃了,因为感觉更麻烦的是帮助。 问题是我得到OpenIdAuthentication.store is nil. Using in-memory store. OpenIdAuthentication.store is nil. Using in-memory store. 日志中的警告,阻止正确地validation用户。 这是日志片段: Processing UserSessionsController#create (for 127.0.0.1 at 2010-04-21 23:58:38) [POST] Parameters: {“commit”=>”Sign in”, “authenticity_token”=>”MSPc+VMgsQZ/w7vsb2OiE0azsF1QmphZqfnS6cPRD/U=”, “openid_identifier”=>”http://myopenid.com”} Completed in 12ms (View: 1, DB: 0) | 401 Unauthorized [http://localhost/user_session] Generated checkid_setup request to http://www.myopenid.com/server with assocication {HMAC-SHA1}{4bcf0490}{MN9AXg==} OpenIdAuthentication.store is nil. Using in-memory store. Error […]

有没有办法为heroku上的应用程序设置简单的http身份validation?

我想使用简单的http身份validation在heroku上设置一个私有临时服务器。 那可能吗?