Simple Access Control plugin
Plugin details
Documentation
ruby script/plugin install http://mabs29.googlecode.com/svn/trunk/plugins/simple_access_control
The plugin is automatically hooked into ActionController::Base.
In your controllers, add access rules like so:
access_rule 'admin', :only => :destroy access_rule 'user || admin', :only => [:new, :create, :edit, :update]
Note the use of Ruby-style operators. These strings are real conditionals and should be treated as such. Every grouping of non-operator characters will be considered a role title.
In your views, you can use the following:
<% restrict_to 'admin || moderator' do %> <%= link_to "Admin Area", admin_area_url %> <% end %>
AND
<%= link_to("Admin Area", admin_area_url) if has_permission?('admin || moderator') %>
There are also transitional methods which help you move from acl_system2 to this plugin -- I do this not to denegrate acl_system2 but because I did this for myself and decided to include it. The two systems are rather similar.
Also, there are two callbacks, permission_granted and permission_denied, which may define in your controllers to customise their response. For example:
def permission_granted logger.info("[authentication] Permission granted to %s at %s for %s" % [(logged_in? ? current_user.login : 'guest'), Time.now, request.request_uri]) end def permission_denied logger.info("[authentication] Permission denied to %s at %s for %s" % [(logged_in? ? current_user.login : 'guest'), Time.now, request.request_uri]) end
Further Documentation
There is currently no advanced documentation for this plugin.
New documentationEdit plugin | (0 older versions) | Last edited by: hardway, 7 months ago

