Class: RailsBase::Mfa::EvaluationController
- Inherits:
-
RailsBaseApplicationController
- Object
- ActionController::Base
- RailsBaseApplicationController
- RailsBase::Mfa::EvaluationController
- Defined in:
- app/controllers/rails_base/mfa/evaluation_controller.rb
Constant Summary collapse
- OTP_TEMPLATE =
"rails_base/mfa/validate/totp/totp_event_input"- SMS_TEMPLATE =
"rails_base/mfa/validate/sms/sms_event_input"
Constants included from CaptureReferenceHelper
CaptureReferenceHelper::CAPTURE_ACTION_NAME, CaptureReferenceHelper::CAPTURE_CONTROLLER_PATH, CaptureReferenceHelper::CAPTURE_REFERRED_PATH
Constants included from AppearanceHelper
AppearanceHelper::APPEARANCE_MODE_ACTUAL_COOKIE, AppearanceHelper::APPEARANCE_MODE_COOKIE, AppearanceHelper::APPEARANCE_TEXT_CLASS, AppearanceHelper::VIEWPORT_EXTRA_LARGE, AppearanceHelper::VIEWPORT_EXTRA_SMALL, AppearanceHelper::VIEWPORT_LARGE, AppearanceHelper::VIEWPORT_MEDIUM, AppearanceHelper::VIEWPORT_MOBILE_MAX, AppearanceHelper::VIEWPORT_SIZES, AppearanceHelper::VIEWPORT_SMALL
Constants included from ApplicationHelper
ApplicationHelper::TIMEZONE_OFFSET_COOKIE, ApplicationHelper::TIMEZONE_SESSION_NAME
Instance Method Summary collapse
-
#mfa_with_event ⇒ Object
GET mfa/:event.
Methods inherited from RailsBaseApplicationController
#admin_impersonation_session?, #admin_reset_impersonation_session!, #admin_user?, #capture_admin_action, #is_timeout_error?, #populate_admin_actions, #set_time_zone
Methods included from CaptureReferenceHelper
#authenticate_user!, #capture_and_clear_reference_redirect!, #capture_clear_reference_from_sesssion!, #capture_reference, #redirect_from_reference, #reference_redirect, #skip_capture_reference!, #skip_capture_reference?, #use_capture_reference?
Methods included from AppearanceHelper
#appearance_mode_drop_down, #appearance_text_class, #footer_mode_case, #force_sticky_mode!
Methods included from ApplicationHelper
#admin_reset_session!, #browser, #is_mobile?, #is_safari?, #mfa_fallback?
Instance Method Details
#mfa_with_event ⇒ Object
GET mfa/:event
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'app/controllers/rails_base/mfa/evaluation_controller.rb', line 11 def mfa_with_event user = User.find(@__rails_base_mfa_event.user_id) decision = RailsBase::Mfa::Decision.(user: user) mfa_type = mfa_decision(provided: params[:type], default: decision.mfa_type, allowed: decision.) if @__rails_base_mfa_event.phone_number phone_number = @__rails_base_mfa_event.phone_number else phone_number = User.find(@__rails_base_mfa_event.user_id).phone_number end @masked_phone = User.masked_number(phone_number) @mfa_options = decision..map do |type| next if type == mfa_type { text: "Switch MFA to #{type}", ** RailsBase::Mfa.mfa_link(mfa_event: @__rails_base_mfa_event.event, mfa: type) } end.compact case mfa_type when RailsBase::Mfa::OTP render OTP_TEMPLATE when RailsBase::Mfa::SMS render SMS_TEMPLATE end end |