Ruby LDAP

Ogólnie wyklikanie obsługi LDAP’a w ruby’m jest bajecznie proste, osoby które twierdzą, że stara wersja Ruby-net-ldap jest zła bo jest stara, wyjaśniam że LDAP jako usługa jest raczej projektem statycznym i jako taki nie zmienia się co miesiąc. Wersja net-ldap z roku 2006 jest jak najbardziej ok i wspira właściwie wszystkie możliwości protokołu LDAP.

Pierwsze co trzeba zrobić to zainstalować bliblioteki LDAP dla Ruby’ego:

    gem install ruby-net-ldap

Jak już mamy biblioteki to piszemy nasz pierwszy skrypt, powiedzmy LDAP’owy „Hello World”:

require 'rubygems'
require 'net/ldap'

username = 'user'
password = 'passwd'
ldap = Net::LDAP.new(:host => 'ldap.example.com', :base => 'ou=Users,dc=example,dc=com')
filter = Net::LDAP::Filter.eq('uid', username)
ldap.search(:filter => filter) {|entry| username = entry.dn}
ldap.auth(username, password)

if ldap.bind
  print "Hello World :D";
else
  print "Bye World !!!";
end

Właściwie to wszystko – działa.
Reszta już powiedzmy jest prosta, szukanie, dodawanie, usuwanie – jak w LDAP’ie :)

Polecam również wątek na Google Groups na ten temat.

Smacznego.