My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Links

Overview

Active Authentication is a modified version of acts_as_authentication designed to authenticate users against Active Directory and automatically adds them to the database.

Installation

Installation is similar to acts_as_authenticated, first you install the plugin:

./script/plugin install http://activeauthentication.googlecode.com/svn/trunk/activeauthentication

Next generate your model and migrate the database:

./script/generate authenticated user account
rake db:migrate

Now include the authenticated system in your application.rb file:

include AuthenticatedSystem

Add a filter to any controller you want to protect:

before_filter :login_required

And finally, modify config/active_directory.yml to match your environment.

Troubleshooting

If you are experiencing problems such as

MissingSourceFile (no such file to load -- ldap):
    /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require'
    /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'
    /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:495:in `require'
    /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:342:in `new_constants_in'
    /usr/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/active_support/dependencies.rb:495:in `require'
    .//app/controllers/account_controller.rb:2

You may need to install the ruby ldap libraries. On Ubuntu that can be accomplished with the following command:

sudo apt-get install libldap-ruby1.8

Fedora

For those of you using Fedora, Geoffrey Gouez has the following advice (Thanks Geoffrey!):

For fedora 7 (and maybe core 5 and 6), using activeauthentication throws missing file exception.

This files are include in previous version of openssl rpm and are replaced by .so.6

For resolve problem, just links files in /lib directory like this :

ln /lib/libcrypto.so.6 /lib/libcrypto.so.5

ln /lib/libssl.so.6 /lib/libssl.so.5

Powered by Google Project Hosting