# Active DIrectory

**URL:** <https://www.ruby-forum.com/t/active-directory/62886>\
**Category:** Rails\
**Created:** [June 9, 2006, 2:08am UTC](https://www.ruby-forum.com/t/active-directory/62886 "2006-06-09T02:08:18Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 9, 2006, 2:08am UTC](https://www.ruby-forum.com/t/active-directory/62886/1 "2006-06-09T02:08:18Z")

</div>

I am building a application for my university and I would like to make  
this  
application authenticate agains a Active Directory server. I would like  
to  
know if there is an already built solution for this somewhere online ?

Thanks

---

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 9, 2006, 4:42am UTC](https://www.ruby-forum.com/t/active-directory/62886/2 "2006-06-09T04:42:04Z")

</div>

On Thu, 2006-06-08 at 20:06 -0400, Nicolas K. wrote:

> I am building a application for my university and I would like to make  
> this application authenticate agains a Active Directory server. I  
> would like to know if there is an already built solution for this  
> somewhere online ?

* * *

I haven’t authenticated against Active Directory but I have used  
Ruby::LDAP to authenticate against my openLDAP server

Craig

---

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 9, 2006, 4:49am UTC](https://www.ruby-forum.com/t/active-directory/62886/3 "2006-06-09T04:49:02Z")

</div>

Craig W. wrote:

> I haven’t authenticated against Active Directory but I have used

I guess that could work. Can you send me some code samples ?

Thanks.

Nic

---

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 9, 2006, 5:02am UTC](https://www.ruby-forum.com/t/active-directory/62886/4 "2006-06-09T05:02:38Z")

</div>

On Thu, 2006-06-08 at 22:38 -0400, Nicolas K. wrote:

> > > 
> > 
> > * * *
> > 
> > I haven’t authenticated against Active Directory but I have used  
> > Ruby::LDAP to authenticate against my openLDAP server
> 
> I guess that could work. Can you send me some code samples ?

* * *

[http://wiki.rubyonrails.org/rails/pages/LDAPFunctions](http://wiki.rubyonrails.org/rails/pages/LDAPFunctions)

[http://ruby-ldap.sourceforge.net/](http://ruby-ldap.sourceforge.net/)

Craig

---

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 9, 2006, 6:09am UTC](https://www.ruby-forum.com/t/active-directory/62886/5 "2006-06-09T06:09:10Z")

</div>

On 6/8/06, Craig W. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> On Thu, 2006-06-08 at 20:06 -0400, Nicolas K. wrote:
> 
> > I am building a application for my university and I would like to make  
> > this application authenticate agains a Active Directory server. I  
> > would like to know if there is an already built solution for this  
> > somewhere online ?  
> > I haven’t authenticated against Active Directory but I have used  
> > Ruby::LDAP to authenticate against my openLDAP server

Also make sure you check out Net::LDAP for Ruby  
([http://rubyforge.org/projects/net-ldap](http://rubyforge.org/projects/net-ldap)). Although it’s relatively  
new, it’s pure Ruby and requires no additional libraries or  
compilation. Additionally, the developer (Francis C.) is very  
responsive.

-austin

---

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 13, 2006, 12:26am UTC](https://www.ruby-forum.com/t/active-directory/62886/6 "2006-06-13T00:26:12Z")

</div>

I’ve also started a project to deliver ActiveDirectory-specific  
functionality to Ruby. It’s on RubyForge ([http://rubyforge.org/frs/](http://rubyforge.org/frs/)?  
group\_id=1580) and as a gem (gem install activedirectory). It  
requires Ruby::LDAP, but I’m looking at Net::LDAP as mentioned here  
by Austin Z. and will likely make it an option if it works out  
well enough.

It’s pretty well documented, just rdoc it or view the docs through  
gem\_server.

Justin

---

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 12, 2006, 7:35pm UTC](https://www.ruby-forum.com/t/active-directory/62886/7 "2006-06-12T19:35:04Z")

</div>

On 6/8/06, Nicolas K. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> I am building a application for my university and I would like to make this  
> application authenticate agains a Active Directory server. I would like to  
> know if there is an already built solution for this somewhere online ?

I’ve put together a fairly simple plugin that does it [1], which I use  
on one of my sites. It requires Ruby::LDAP. Here’s an example:

require ‘simple\_ldap\_authenticator’  
SimpleLdapAuthenticator.servers = %w’[dc1.domain.com](http://dc1.domain.com) [dc2.domain.com](http://dc2.domain.com)’  
SimpleLdapAuthenticator.use\_ssl = true  
SimpleLdapAuthenticator.login\_format = ‘removed\_email\_address@domain.invalid’  
SimpleLdapAuthenticator.logger = RAILS\_DEFAULT\_LOGGER

class LoginController \< ApplicationController  
def login  
return redirect\_to(:action=\>‘try\_again’) unless  
SimpleLdapAuthenticator.valid?(params[:username], params[:password])  
session[:username] = params[:username]  
end  
end

[1] [http://wiki.rubyonrails.org/rails/pages/Simple+LDAP+Authenticator](http://wiki.rubyonrails.org/rails/pages/Simple+LDAP+Authenticator)

---

<div class="post-metadata">

**Author:** ![Nicolas\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f6c823/32.png) [@Nicolas\_K](https://www.ruby-forum.com/u/Nicolas_K)\
**Post date:** [June 15, 2006, 1:41am UTC](https://www.ruby-forum.com/t/active-directory/62886/8 "2006-06-15T01:41:29Z")

</div>

Justin Mecham wrote:

> Justin  
> Cool. I’m also looking at Net::LDAP. But I will surely look into that  
> gem.
