Class: Devise::DuoSecurityController
- Inherits:
-
DeviseController
- Object
- DeviseController
- Devise::DuoSecurityController
- Includes:
- Controllers::Helpers, Duo
- Defined in:
- app/controllers/devise/duo_security_controller.rb
Constant Summary
Constants included from Duo
Duo::AKEY_LEN, Duo::APP_EXPIRE, Duo::APP_PREFIX, Duo::AUTH_PREFIX, Duo::DUO_EXPIRE, Duo::DUO_PREFIX, Duo::ERR_AKEY, Duo::ERR_IKEY, Duo::ERR_SKEY, Duo::ERR_USER, Duo::IKEY_LEN, Duo::SKEY_LEN
Instance Method Summary collapse
Methods included from Duo
#sign_request, #verify_response
Instance Method Details
#show ⇒ Object
11 12 13 14 |
# File 'app/controllers/devise/duo_security_controller.rb', line 11 def show @host = DuoSecurity.configuration.host @signature = Duo.sign_request(DuoSecurity.configuration.ikey, DuoSecurity.configuration.skey, DuoSecurity.configuration.app_secret, @resource.email) end |
#verify ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'app/controllers/devise/duo_security_controller.rb', line 16 def verify authenticated_username = Duo.verify_response(DuoSecurity.configuration.ikey, DuoSecurity.configuration.skey, DuoSecurity.configuration.app_secret, params[:sig_response]) if authenticated_username warden.session(resource_name)['duo_authenticated'] = true redirect_to session["user_return_to"] || root_path else redirect_to send("#{resource_name}_duo_security_path") end end |