devise は高機能な Rack ベースの認証システムだそうです。
plataformatec’s devise at master – GitHub
よくあるログイン画面を表示して認証する方式もありますし(これはなんというのだろう?)、いろいろな認証方式を使用することができるようです。
今回、お試しサイトを作る必要があって Basic 認証を使用することにしました。
その方法をググってもいまいちわからなかったので、ここに記載しておくことにします。
しかしながらこれで使い方があっているのかどうか、いまいち自身がないので間違っている場合には、ご指摘をお願いします。
devise では通常以下のようなコードで認証を必須にできます。
class ArticlesController < ApplicationController before_filter :authenticate_user! end
以下のページによると HTTP を使用した認証にはこんな風に書いてあります。
How to: use http authentication – devise – GitHub
def http_authenticate authenticate_or_request_with_http_digest do |user_name, password| user_name == "foo" && password == "bar" end warden.custom_failure! if performed? end
今回はパスワードは固定ではないので、えいやとこれだけにしてみました。
class ArticlesController < ApplicationController before_filter :authenticate_user! def http_authenticate end end
思った通りに Basic 認証で認証することができるようになりました。