Skip to content

How To: Use HTTP Auth Basic with Devise

toby cabot edited this page Jun 28, 2013 · 8 revisions

NOTE: HTTP Basic authentication is implemented by Devise so the only code required is a call to authenticate_user! in your controller (which will authenticate both login form users and http basic auth users). See https://github.com/plataformatec/devise/wiki/How-To:-Use-HTTP-Basic-Authentication for instructions.

The following is a sample for a Api Controller that will allow http basic and run it through your exisiting devise configuration.

class Api::ApiController < ApplicationController

  before_filter :check_auth


  def check_auth
    authenticate_or_request_with_http_basic do |username,password|
      resource = User.find_by_email(username)
      if resource.valid_password?(password)
        sign_in :user, resource
      end
    end
  end

end
Clone this wiki locally