= ActiveLdap

ruby library for object-oriented LDAP interction

* Copyright (C) 2004-2006 Will Drewry <tt><will@alum.bu.edu></tt>
* Copyright (C) 2006-2009 Kouhei Sutou <tt><kou@clear-code.com></tt>

Contributors::
  * Dick Davies <tt><rasputnik AT hellooperator.net></tt>
  * Nathan Kinder <tt><quicksilver02 AT mac.com></tt>
  * Patrick Cole <tt><pac AT independent.com.au></tt>
  * Google Inc.

== DESCRIPTION

'ActiveLdap' is a ruby extension library which provides a clean objected
oriented interface to the Ruby/LDAP[0] library.  It was inspired by
ActivRecord[3]. This is not nearly as clean or as flexible as ActiveRecord, but
it is still trivial to define new objects and manipulate them with minimal
difficulty.

For example and usage - read the rdoc in doc/ from lib/activeldap.rb.
It is also available on the web at:

http://ruby-activeldap.rubyforge.org/

== PREREQUISITES

[Ruby intepreter]
  One of them:
  * Ruby[http://www.ruby-lang.org] (1.8.x or 1.9.1)
  * JRuby[http://jruby.codehaus.org/]

[LDAP client]
  JRuby doesn't need to install new library because JRuby
  has builtin LDAP support. Ruby users need one of them:
  * Ruby/LDAP[http://rubyforge.org/projects/ruby-ldap/]
  * Net::LDAP[http://rubyforge.org/projects/net-ldap/]

* ActiveRecord[http://activerecord.rubyonrails.org]

== NOTES

* Only GSSAPI SASL support exists due to Ruby/LDAP limitations

== INSTALL

  % sudo gem install activeldap

== RAILS

There is a small rails plugin included that allows the use
of a file named 'config/ldap.yml' in the config directory of
your rails app. This file has a similar function to the
'database.yml' file that allows you to set your database
connection settings per environment. Similarly, the ldap.yml
file allows settings to be set for development, test, and
production environments. For instance, the development entry
would look something like the following:

  development:
    host: 127.0.0.1
    port: 389
    base: dc=localhost
    bind_dn: cn=admin,dc=localhost
    password: secret

To install, simply add the following codes to you config/environment.rb:

  config.gem "activeldap", :lib => "active_ldap"

When your application starts up, the plugin will call
ActiveLdap::Base.setup_connection using the parameters
specified for your current environment.

== LICENCE

This program is free software; you can redistribute it and/or modify it.  It is
dual licensed under Ruby's license and under the terms of the GNU General
Public License as published by the Free Software Foundation; either version 2,
or (at your option) any later version.

Please see the file LICENSE for the terms of the licence.

== THANKS

This list may not be correct. If you notice mistakes of this
list, please point out.

* Nobody: Bug reports and API improveent ideas.
* James Hughes: Bug reports and advices and documentations.
* Buzz Chopra: Documentations.
* Christoph Lipp: Bug reports.
* Jeff Hall: Bug reports.
* Ernie Miller: Bug reports and advices.
* Daniel Pfile: Patches.
* Jacob Wilkins: Bug reports.
* Ace Suares:
  * Bug reports.
  * Nederlands translations.
* Iain Pople: Bug reports and API improvement ideas.
* Christoph Lipp: Tell us character escape syntax.
* Kevin McCarthy: Patches.
* Perry Smith: Patches, bug reports and indications.
* Marc Dequènes: API suggestions.
* Jeremy Pruitt: Bug reports.
* Bodaniel Jeanes:
  * A suggestion for behavior on simple bind with empty password.
  * Bug reports.
* Naoto Morishima: Bug reports.
* David Morton:
  * An API improvement idea.
  * Bug reports.
* Lennon Day-Reynolds: Bug reports.
* Tilo: A bug report.
* Matt Mencel: Bug reports.
* CultureSpy:
  * Bug reports.
  * Bug fixes.
* gwarf12: A bug report.
* Baptiste Grenier: API improvement ideas.
* Richard 3 Nicholas: API improvement ideas.
* Kazuhiro NISHIYAMA: A bug report.
* Grzegorz Marszałek: A bug report.
* しまさわらさん: A suggesetion.
* Ted Lepich: A suggestion.
* danger1986: A suggestion.
* michael.j.konopka: Bug reports.
* ingersoll: A suggestion.
* Alexey.Chebotar: Bug reports.
* ery.lee: A bug report.
* id:dicdak: A bug report.
* Raiko Mitsu: A bug report.
* Kazuaki Takase: Documents in Japanese.
* Tim Hermans: A bug report.
* Joe Francis: A suggestion.
* Tiago Fernandes: Bug reports.
* achemze: A suggestion.
* George Montana Harkin: A suggestion.
* Marc Dequènes: Bug reports.
* brad@lucky-dip.net: A bug report.
* Hideyuki Yasuda: Bug reports.
* zachwily: A bug report.
* syrius.ml@no-log.org: A bug report.
* Tim Hermans: A bug report.
* Anthony M. Martinez: Helped SASL options support
* ilusi0n.x: A bug report.
* projekttabla: A suggestion.
