Добавление базовой проверки подлинности HTTP на некоторые маршруты в route.rb

Я хочу добавить базовую аутентификацию HTTP на некоторые из моих маршрутов в моем файле routes.rb.

Я получил идею от http://asciicasts.com/episodes/271-resque

routes.rb

Coderbits::Application.routes.draw do  
  resources :snippets  
  root :to => "snippets#new"  
  authenticate :admin do  
    mount Resque::Server, :at => "/resque"  
  end  
end

config/initializers/resque_auth.rb

Resque::Server.use(Rack::Auth::Basic) do |user, password|  
  password == "secret"  
end 

Если я просто хочу защитить маршруты, которые находятся в моем приложении rails, что я должен положить в файл инициализации?

Теперь моя работа заключается в том, чтобы добавить фильтр перед моим контроллером приложений, если запрос не для контроллера, который я включил в белый список:

authenticate_or_request_with_http_basic do |user, password|
  user == ENV["ADMIN_USER"] && password == ENV["ADMIN_PASS"]
end

Ответ 1

Я просто положил

  http_basic_authenticate_with :name => "admin", :password => "secret"

внутри моего контроллера