Sha256: 816c61b4cb0efee50d2df3fac74363167565715844cffd47310a7bbb1bdddc61

Contents?: true

Size: 607 Bytes

Versions: 14

Compression:

Stored size: 607 Bytes

Contents

require 'rubygems'
require 'ramaze'

class MainController < Ramaze::Controller
  trait :logins => {
   'jill' => 'password1',
   'jack' => 'password2',
  }.map{|k,v| ["#{k}:#{v}"].pack('m').strip }

  helper :aspect

  before_all do
    check_auth
  end

  def index
    'Secret Info'
  end

  private

  def check_auth
    response['WWW-Authenticate'] = 'Basic realm="Login Required"'

    if auth = request.env['HTTP_AUTHORIZATION']
      if class_trait[:logins].include?(auth.split.last)
        return true
      end
    end

    respond 'Unauthorized', 401
  end
end

Ramaze.start :adapter => :mongrel

Version data entries

14 entries across 14 versions & 4 rubygems

Version Path
Pistos-ramaze-2008.09 examples/misc/simple_auth.rb
Pistos-ramaze-2008.12 examples/misc/simple_auth.rb
Pistos-ramaze-2009.01 examples/misc/simple_auth.rb
Pistos-ramaze-2009.02 examples/misc/simple_auth.rb
manveru-ramaze-2008.09 examples/misc/simple_auth.rb
manveru-ramaze-2008.10 examples/misc/simple_auth.rb
manveru-ramaze-2008.12 examples/misc/simple_auth.rb
manveru-ramaze-2009.01 examples/misc/simple_auth.rb
ptomato-ramaze-2009.02.1 examples/misc/simple_auth.rb
ptomato-ramaze-2009.02 examples/misc/simple_auth.rb
ramaze-2009.01 examples/misc/simple_auth.rb
ramaze-2008.11 examples/misc/simple_auth.rb
ramaze-2009.03 examples/misc/simple_auth.rb
ramaze-2009.02 examples/misc/simple_auth.rb