Repository is archived
No commit activity in last 3 years
No release in over 3 years
Merb plugin that provides an allow/deny DSL for controlling access
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 1.0
 Project Readme
merb_doorman
============

*** Want to contribute?  Some of the code isn't spec'd yet. ***


Merb plugin that provides an allow/deny DSL for controlling access


# mostly open:
# there is an implicit "allow :all" as the last rule
# rules continue to match until an allow is found, or we run out
# of rules

deny :host => "209.34.*"
deny :user => "bill"       # calls current_user.login, but this is configurable
deny :user_agent => /MSIE/
deny {|c| c.params["arbitrary"] == "expressions"}


# mostly closed:
deny :all                           # removes implicit final allow :all
allow :host => "*.example.com"
allow :time => "8am-5pm" # not implemented yet

# store a block for repeated usage
Merb::Access.add_block :admin, {|c| c.current_user.admin?}

allow :admin