Beta is an access control library that uses a Redis whitelist to control authorization.
It relies upon the Rails.env variable to check against its list of environments to
trigger on.
Install
Install with gem install beta or add gem 'beta' to your Gemfile.
Then, add an initializer in your Rails application to configure Beta:
Beta.config do |config|
redis = $redis
uid = 'mlg_id'
namespace = 'awesome-app'
redirect_url = 'http://majorleaguegaming.com'
environments = [:production]
endFinally, Beta requires the existence of a current_user which responds to the attribute specified in the uid configuration key used in both the whitelist and current_user_on_whitelist? methods.
Usage
By adding include Beta::AccesHelpers to ApplicationController, you get access to
the following methods:
-
whitelist- Used as a before_filter to ensure thecurrent_userhas access -
is_whitelisted?(user)checks to see if the given user is on the list. -
current_user_on_whitelist?leveragesis_whitelisted?to tell you if the current user is special.