Ruby on Rails 3.2.3 にて、本番環境やステージング環境では Basic 認証を設定したいけど、開発環境では Basic 認証したくないときの設定方法をメモ。
開発環境でいちいち Basic 認証の User名、Password を入力するのは面倒ですものね。
app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
before_filter :password_protected unless Rails.env.development?
protected
def password_protected
authenticate_or_request_with_http_basic do |username, password|
username == "spam" && password == "spam_pw"
end
end
end
実行環境が”development”以外の時のみ、認証がかかるようになります。(ユーザ名:spam、パスワード:spam_pw)
以上です。