ruby on rails, ограничивающий доступ к публичному каталогу - PullRequest
1 голос
/ 08 июня 2010

Мне нужно запретить доступ к публичному каталогу с помощью механизма .htaccess. Это означает, что нажатие http://localhost:3000 должно запрашивать учетные данные, прежде чем он покажет что-либо еще. Возможно ли это?

Ответы [ 2 ]

0 голосов
/ 08 июня 2010

Обычная проверка подлинности только на производстве, например:

В application_controller.rb:

USERNAME = 'foo'
PASSWORD = 'bar

if RAILS_ENV['production']
 before_filter :authenticate
end

частный

def authenticate
    authenticate_or_request_with_http_basic do |user_name, password|
      user_name == USERNAME && password == PASSWORD
    end
end
0 голосов
/ 08 июня 2010

Вы можете достичь чего-то подобного, используя before_filter в вашем ApplicationController. Имейте в виду, что это только добавляет аутентификацию ко всем действиям вашего контроллера, это не защитит общедоступные подкаталоги, такие как таблицы стилей, javascripts и изображения. Если по какой-то причине это то, что вы ищете, вам, вероятно, следует просто использовать метод htpasswd.

Railscasts: http://railscasts.com/episodes/82-http-basic-authentication - просто поместите before_filter и authenticate в ваш ApplicationController для защиты каждого контроллера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...