123456789_123456789_123456789_123456789_123456789_

Module: ActionController::HttpAuthentication::Basic::ControllerMethods

Relationships & Source Files
Namespace Children
Modules:
Extension / Inclusion / Inheritance Descendants
Included In:
::ActionController::Base, ::ActionView::TestCase::TestController, Rails::ApplicationController, Rails::InfoController, Rails::MailersController, Rails::WelcomeController
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
Defined in: actionpack/lib/action_controller/metal/http_authentication.rb

Class Method Summary

::ActiveSupport::Concern - Extended

class_methods

Define class methods from given block.

included

Evaluate given block in context of base class, so that you can write class macros here.

prepended

Evaluate given block in context of base class, so that you can write class macros here.

Instance Method Summary

Instance Method Details

#authenticate_or_request_with_http_basic(realm = nil, message = nil, &login_procedure)

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal/http_authentication.rb', line 87

def authenticate_or_request_with_http_basic(realm = nil, message = nil, &)
  authenticate_with_http_basic(&) || request_http_basic_authentication(realm || "Application", message)
end

#authenticate_with_http_basic(&login_procedure)

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal/http_authentication.rb', line 91

def authenticate_with_http_basic(&)
  HttpAuthentication::Basic.authenticate(request, &)
end

#http_basic_authenticate_or_request_with(name:, password:, realm: nil, message: nil)

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal/http_authentication.rb', line 78

def http_basic_authenticate_or_request_with(name:, password:, realm: nil, message: nil)
  authenticate_or_request_with_http_basic(realm, message) 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)

[ GitHub ]

  
# File 'actionpack/lib/action_controller/metal/http_authentication.rb', line 95

def request_http_basic_authentication(realm = "Application", message = nil)
  HttpAuthentication::Basic.authentication_request(self, realm, message)
end