[Ruby on Rails] 開発環境以外で Basic 認証を設定する方法

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)

以上です。