apache-config-generator/lib/apache/permissions.rb
2010-05-06 10:40:45 -04:00

63 lines
1.2 KiB
Ruby

module Apache
module Permissions
def deny_from_all
order :deny, :allow
deny :from_all
end
def allow_from_all
order :allow, :deny
allow :from_all
end
def allow_from(where)
allow "from_#{where}".to_sym
end
def order(*args)
self << "Order #{args * ','}"
end
def default_restrictive!
directory '/' do
options :follow_sym_links
allow_override :none
deny_from_all
end
end
def no_htfiles!
files_match '^\.ht' do
deny_from_all
satisfy :all
end
end
alias :order! :order
def basic_authentication(zone, users_file, requires)
auth_type :basic
auth_name zone
auth_user_file users_file
requires.each do |type, values|
apache_require type, *values
end
end
def ldap_authentication(zone, url, requires)
auth_type :basic
auth_name zone
auth_basic_provider :ldap
authz_ldap_authoritative :on
auth_ldap_url url
requires.each do |type, values|
apache_require type, *values
end
end
def apache_require(*opts)
self << "Require #{opts * " "}"
end
end
end