apache-config-generator/lib/apache/permissions.rb

72 lines
1.4 KiB
Ruby
Raw Normal View History

2010-04-27 21:00:43 +00:00
module Apache
module Permissions
def deny_from_all
2010-04-28 20:19:03 +00:00
order :deny, :allow
deny :from_all
2010-04-27 21:00:43 +00:00
end
2010-05-07 20:04:06 +00:00
alias :deny_from_all! :deny_from_all
2010-04-27 21:00:43 +00:00
def allow_from_all
2010-04-28 20:19:03 +00:00
order :allow, :deny
allow :from_all
2010-04-27 21:00:43 +00:00
end
2010-05-05 14:44:20 +00:00
2010-05-07 20:04:06 +00:00
alias :allow_from_all! :allow_from_all
2010-05-05 16:25:07 +00:00
def allow_from(where)
allow "from_#{where}".to_sym
end
2010-05-05 14:44:20 +00:00
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
2010-05-06 14:40:45 +00:00
def basic_authentication(zone, users_file, requires)
2010-05-07 20:04:06 +00:00
exist? users_file
2010-05-06 14:40:45 +00:00
auth_type :basic
auth_name zone
auth_user_file users_file
requires.each do |type, values|
apache_require type, *values
end
end
2010-05-07 20:04:06 +00:00
alias :basic_authentication! :basic_authentication
2010-05-06 14:40:45 +00:00
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
2010-05-07 20:04:06 +00:00
alias :ldap_authentication! :ldap_authentication
2010-05-06 14:40:45 +00:00
def apache_require(*opts)
self << "Require #{opts * " "}"
end
2010-04-27 21:00:43 +00:00
end
end