123456789_123456789_123456789_123456789_123456789_

Module: ActionController::HttpAuthentication::Token::ControllerMethods

Relationships & Source Files
Extension / Inclusion / Inheritance Descendants
Included In:
::ActionController::Base, ::ActionView::TestCase::TestController, Rails::ApplicationController, ::Rails::HealthController, Rails::InfoController, Rails::MailersController, Rails::WelcomeController
Defined in: actionpack/lib/action_controller/metal/http_authentication.rb

Instance Method Summary

Instance Method Details

#authenticate_or_request_with_http_token(realm = "Application", message = nil, &login_procedure)

Authenticate using an HTTP Bearer token, or otherwise render an HTTP header requesting the client to send a Bearer token. For the authentication to be considered successful, login_procedure must not return a false value. Typically, the authenticated user is returned.

See ::ActionController::HttpAuthentication::Token for example usage.

[ GitHub ]

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

def authenticate_or_request_with_http_token(realm = "Application", message = nil, &)
  authenticate_with_http_token(&) || request_http_token_authentication(realm, message)
end

#authenticate_with_http_token(&login_procedure)

Authenticate using an HTTP Bearer token. Returns the return value of login_procedure if a token is found. Returns nil if no token is found.

See ::ActionController::HttpAuthentication::Token for example usage.

[ GitHub ]

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

def authenticate_with_http_token(&)
  Token.authenticate(self, &)
end

#request_http_token_authentication(realm = "Application", message = nil)

Render an HTTP header requesting the client to send a Bearer token for authentication.

[ GitHub ]

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

def request_http_token_authentication(realm = "Application", message = nil)
  Token.authentication_request(self, realm, message)
end