Ruby on Railsでステージング環境にBASIC認証をかける方法

Herokuではじめる 初心者のためのRuby on Rails3入門」を進める途中、「Herokuでステージング環境を作る – アインシュタインの電話番号」という記事に出会い、「よし、私もHerokuでステージング環境を作ってみよう!」と思い立ったことは前回の「Herokuの環境変数を確認/追加/変更/削除する方法」という記事に書きました。

今回の記事ではステージング環境にBASIC認証をかける方法をメモしておこうと思います。

(ステージング環境の作り方を最初から知りたい方は「HerokuでBASIC認証が必要なステージング環境を作る(Ruby on Rails)」へどうぞ!)


ステージング環境にBASIC認証をかけるには

application_controller.rb に

http_basic_authenticate_with name: ENV['BASIC_AUTH_USERNAME'], password: ENV['BASIC_AUTH_PASSWORD'] if Rails.env.staging?

を追記します。

私の環境だとこうなります。

class ApplicationController < ActionController::Base
  protect_from_forgery   
  http_basic_authenticate_with name: ENV['BASIC_AUTH_USERNAME'], password: ENV['BASIC_AUTH_PASSWORD'] if Rails.env.staging?
end

次に、前回の記事で紹介したやり方で環境変数にユーザー名とパスワードをセットします。

例えば、

heroku config:set BASIC_AUTH_USERNAME="user" BASIC_AUTH_PASSWORD="1234" --app ステージング環境にしたいアプリ名

とすれば、「ユーザー名:user パスワード:1234」と設定されます。

参考サイト

こちらの記事を拝見しました。ありがとうございました!

Railsでstaging環境だけBasic認証する | もっとクールにプログラミング

次回予告

今回は「ステージング環境にBASIC認証をかける方法」を紹介しましたが、「結局どういう手順を踏めばBASIC認証を必要とするステージング環境をHerokuに作れるのか」がこれでは分かりませんよね……。

なので、次回は「HerokuでBASIC認証が必要なステージング環境を作る(Ruby on Rails)」っていう記事を気が向いたら書こうかなと思います。

書きました!>「HerokuでBASIC認証が必要なステージング環境を作る(Ruby on Rails)

<

「名前とメールアドレスを入力」または「ツイッター等のアカウントでログイン」することでコメントを残せます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

サイト内検索

up!