Module: ActionController::HttpAuthentication::Basic::ControllerMethods
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/action_controller/metal/http_authentication.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
- #authenticate_or_request_with_http_basic(realm = nil, message = nil, &login_procedure) ⇒ Object
- #authenticate_with_http_basic(&login_procedure) ⇒ Object
- #http_basic_authenticate_or_request_with(name:, password:, realm: nil, message: nil) ⇒ Object
- #request_http_basic_authentication(realm = "Application", message = nil) ⇒ Object
Instance Method Details
#authenticate_or_request_with_http_basic(realm = nil, message = nil, &login_procedure) ⇒ Object
86 87 88 |
# File 'lib/action_controller/metal/http_authentication.rb', line 86 def authenticate_or_request_with_http_basic(realm = nil, = nil, &login_procedure) authenticate_with_http_basic(&login_procedure) || request_http_basic_authentication(realm || "Application", ) end |
#authenticate_with_http_basic(&login_procedure) ⇒ Object
90 91 92 |
# File 'lib/action_controller/metal/http_authentication.rb', line 90 def authenticate_with_http_basic(&login_procedure) HttpAuthentication::Basic.authenticate(request, &login_procedure) end |
#http_basic_authenticate_or_request_with(name:, password:, realm: nil, message: nil) ⇒ Object
77 78 79 80 81 82 83 84 |
# File 'lib/action_controller/metal/http_authentication.rb', line 77 def http_basic_authenticate_or_request_with(name:, password:, realm: nil, message: nil) authenticate_or_request_with_http_basic(realm, ) do |given_name, given_password| # This comparison uses & so that it doesn't short circuit and # uses `secure_compare` so that length information isn't leaked. ActiveSupport::SecurityUtils.secure_compare(given_name, name) & ActiveSupport::SecurityUtils.secure_compare(given_password, password) end end |
#request_http_basic_authentication(realm = "Application", message = nil) ⇒ Object
94 95 96 |
# File 'lib/action_controller/metal/http_authentication.rb', line 94 def request_http_basic_authentication(realm = "Application", = nil) HttpAuthentication::Basic.authentication_request(self, realm, ) end |