Di rumah, di kamar atas — dipotret oleh Galih Satriaji *)
Kamas Muhammad | kamas@lc.vlsm.org

Pencerahanku Tentang LDAP

Ditulis pada tanggal 05 April 2010

Beberapa tahun yang lalu saat pertama kali berurusan dengan makhluk yang punya nama LDAP (Lightweight Directory Access Protocol), pada setiap tutorial/informasi tentang protokol itu, selalu ada secuplik informasi yang intinya memberitahukan bahwa penggunaan LDAP memungkinkan kita untuk membuat makhluk lain yang punya nama keren Single Sign On (SSO). SSO sendiri rasanya tidak perlu dibahas lebih lanjut. Intinya kan sederhana, yaitu kita punya sebuah "username/password" yang sekali daftar bisa dimanfaatkan untuk mengkakses aplikasi ini, aplikasi itu, juga aplikasi anu-anu. Sekali kita ganti password, maka akses ke semua aplikasi yang lain itu juga ikutan berubah.

Bagaimana dengan yang lain?

Saat itu pertanyaan yang muncul di kepala saya adalah "emangnya yang lain ndak bisa?" Ya maksud saya untuk keperluan single sign on itu. Katakanlah saya punya tabel di MySQL dengan skema begini:

UsernamePassword
sokam$1$kjged8$kjhdschg2i3udi
yudowati$1$l43edwj$8uasdchil428rgf


Aplikasi apa pun yang saya bikin kan bisa mengakses ke tabel itu. Saya bisa baca kolom username dan password, kemudian saya cocokkan dengan input yang dikirim oleh user saya. Kalau hasilnya TRUE maka OK, kalau FALSE maka FUCK OFF! Kebetulan karena dulu sempat punya database user yang lumayan (sekitar 17 ribu entry) dan sempat beberapa kali bikin aplikasi yang pakai otentikasi ke tabel itu, jadi ya dulu saya pikir baik-baik saja. Soal bagaimana cara pembandingan MD5Crypt di PHP, Perl, atau yang lain, saya anggap sebagai konsekuensi saja, ndak perlu dirisaukan.

Beberapa tahun kemudian, di salah satu site yang jadi korban kerjaan, iseng-iseng saya migrasikan user email dari model passwd-file based ke ldap based. Semuanya berjalan normal-normal saja. Akses POP/IMAP tinggal konfig sini konfig situ, kemudian webmail juga tinggal cari plugin ini plugin itu, dan segalanya berjalan seperti yang saya harapkan. Lagi-lagi saya masih bertanya: "Apa istimewanya ni LDAP?"

Syukurlah, pencerahannya akhirnya datang beberapa bulan yang lalu. Ketika itu saya sedang bikin beberapa aplikasi di tempat yang itu juga. Bener-bener sadar ketika ternyata aplikasi-aplikasi yang kubuat itu ndak perlu tau username dan password orang yang mau auth. Aplikasiku cukup bind ke server pake username dan passwd orang yang bersangkutan. Kalau gagal bind berarti FUCK OFF!, kalau berhasil berarti OK. Aku ndak perlu ambil isi atribut uid dan userPassword, ndak perlu ambil bagian salt untuk bikin hash dari input user untuk dibandingkan dengan passwd yang tersimpan. Sangat nyaman sih, mengingat userPassword itu bisa berisi hasil olahan berbagai algoritma. Bisa clear, sha-1, dllsb.

Soal bagaimana dia bisa jadi global address book dan yang lain saya ndak pingin mbahas di sini lah. Dari dulu cuma penasaran aja tentang penekanan fungsionalitas LDAP sebagai backend sistem SSO.

Syukurlah, satu lagi keblo'onan saya hilang dari kepala he..he..he..

 

 

Timpalan tulisan

bloon - 8 Jun 2010

ane yg masih bloon bro....
butuh pencerahan secara menyeluruh nih...
hehehe

boleh tau ym atawa imel...??? ***klo berkenan

ane rencana mo ngambil ldap sso sebagai tugas akhir.

 

Timpali tulisan

Nama
Komentar
  [Kode Huruf] Ndak bisa dibaca? klik di sini.
  Tuliskan kode di atas di isian ini:
Seharusnya situs ini kelihatan bagus kalo anda lihat menggunakan layar monitor
Kalau dilihat dari kuku jempol... Ah... Dunia khayal...

Ha? Apa? XHTML? Halah prek! Gelem wacanen, ndak gelem tinggalen :P