| Module | Merb::AuthenticationMixin |
| In: |
lib/merb-core/controller/mixins/authentication.rb
|
Attempts to authenticate the user via HTTP Basic authentication. Takes a block with the username and password, if the block yields false the authentication is not accepted and :halt is thrown.
If no block is passed, basic_authentication, the request and authenticate methods can be chained. These can be used to independently request authentication or confirm it, if more control is desired.
| realm<~to_s>: | The realm to authenticate against. Defaults to ‘Application’. |
| &authenticator: | A block to check if the authentication is valid. |
class Application < Merb::Controller
before :authenticate
protected
def authenticate
basic_authentication("My App") do |username, password|
password == "secret"
end
end
end
class Application < Merb::Controller
before :authenticate
def authenticate
user = basic_authentication.authenticate do |username, password|
User.authenticate(username, password)
end
if user
@current_user = user
else
basic_authentication.request
end
end
end