Menelusuri evolusi directory services dari X.500 dan DAP hingga LDAP, memahami masalah yang diselesaikan, membandingkan directory dengan database relasional, serta melihat kasus penggunaan LDAP di dunia nyata.

Di episode 0 kalian menyiapkan skill, tools, dan lab. Sekarang saatnya memahami mengapa LDAP ada. Semua teknologi lahir dari masalah, dan LDAP lahir dari masalah besar di tahun 1980-an: bagaimana menyimpan dan mencari informasi tentang manusia dan sumber daya secara terpusat di organisasi besar? Episode 1 menelusuri evolusi directory services dari standar X.500 yang berat, kelahiran LDAP sebagai alternatif ringan, sampai masalah-masalah yang dibawa directory services selesaikan.
X.500 adalah standar directory services yang dirancang dalam kerangka model OSI (Open Systems Interconnection). Tujuannya ambisius: satu direktori global yang terdistribusi, mirip buku telepon seluruh dunia. X.500 memperkenalkan banyak konsep yang nanti diwarisi LDAP — struktur pohon, entries, dan distinguished names — tetapi juga membawa birokrasi protokol yang berat.
Akses ke direktori X.500 dilakukan lewat DAP (Directory Access Protocol). DAP bergantung penuh pada tumpukan protokol OSI yang jarang diimplementasikan, menuntut resource besar, dan begitu kompleks sehingga praktis hanya bisa dipakai organisasi besar. Dunia internet yang berbasis TCP/IP tidak bisa menikmatinya.
Pada tahun 1993, riset di University of Michigan melahirkan LDAP — Lightweight Directory Access Protocol — sebagai jembatan yang memungkinkan klien sederhana mengakses direktori X.500 langsung lewat TCP/IP, tanpa tumpukan OSI yang rumit. Kata lightweight bukan berarti fiturnya kurang; justru protokolnya disederhanakan agar layak berjalan di perangkat biasa.
LDAP berevolusi cepat melewati beberapa tonggak:
| Tahun | Tonggak |
|---|---|
| 1993 | LDAP pertama dari University of Michigan |
| 1995 | LDAPv2 distandardisasi dalam RFC 1777 |
| 1997 | LDAPv3 lahir lewat RFC 2251 |
| 2006 | Seri RFC 4510 merangkum LDAPv3 sebagai standar penuh |
Agar terbayang seberapa jauh penyederhanaannya, perbandingan sekilas ini membantu:
| Aspek | X.500 | LDAP |
|---|---|---|
| Protokol akses | DAP di atas tumpukan OSI | LDAP di atas TCP/IP |
| Bobot | Kompleks, resource besar | Ringan dan sederhana |
| Model | OSI penuh | Client-server langsung |
| Akses internet | Sulit | Native |
Intinya: LDAP mempertahankan ide dasar X.500 — struktur pohon, entries, dan DN — sambil membuang birokrasi protokol yang tidak terjangkau internet. Inilah yang membuatnya bisa diadopsi massal, bukan sekadar alternatif eksotis.
Seri RFC 4510 tahun 2006 inilah yang menjadi dasar LDAP modern yang kalian gunakan hari ini, termasuk implementasi OpenLDAP. Setelah mengenal sejarah, pertanyaan berikutnya adalah: masalah apa sebenarnya yang diselesaikan?
Semua masalah di bawah berakar pada satu pertanyaan: di mana data identitas disimpan, dan siapa pemiliknya? Tanpa directory services, tiap aplikasi membuat basis data user sendiri — hasilnya duplikasi, inkonsistensi, dan administrasi yang melelahkan.
Pertanyaan klasik yang selalu muncul: kenapa tidak pakai database biasa saja? Jawabannya terletak pada perbedaan prioritas:
| Aspek | Directory Services | Database Relasional |
|---|---|---|
| Beban kerja | Dioptimalkan untuk baca (read-optimized) | Seimbang baca-tulis, transaksional |
| Model data | Hierarkis, berbentuk pohon | Relasional, tabel dan relasi |
| Schema | Berbasis schema ketat | Bisa schema-less (misalnya NoSQL) |
| Replikasi | Replikasi ringan dan sering | Transaksi berat dengan konsistensi ketat |
| Operasi khas | Search, bind, compare | Query, join, update |
| Kasus pakai | Autentikasi, direktori, lookup cepat | Data transaksional, laporan |
Intinya: database menangani data yang sering berubah dan membutuhkan konsistensi transaksional; directory menangani data yang dibaca jauh lebih sering daripada ditulis dan membutuhkan kecepatan lookup. LDAP mengorbankan fitur transaksi demi kecepatan dan kesederhanaan.
Tip
Aturan praktisnya sederhana: bila data berubah terus dan menuntut transaksi atomik, gunakan database. Bila data lebih sering dibaca, dicari, dan jarang diubah — dan dipakai untuk autentikasi — directory adalah pilihan yang jauh lebih alami.
LDAP bukan teknologi asing — kemungkinan besar kalian sudah menggunakannya tanpa sadar:
Contoh paling mudah dilihat sehari-hari adalah lookup buku alamat — operasi yang sama dengan yang dilakukan klien email setiap kali kalian mengetik nama kontak:
ldapsearch -x -H ldap://ldap.example.com \
-b "ou=people,dc=example,dc=com" "(cn=*budi*)" cn mail telephoneNumberPerintah ini meminta entry yang cocok dengan filter nama, dan hanya menarik tiga atribut. Bila direktori dipasang sebagai backend DNS, lookup serupa juga bisa dipakai untuk menyelesaikan nama host — inilah fleksibilitas LDAP yang membuatnya bertahan puluhan tahun.
Episode 1 mengisi latar belakang: X.500 dan DAP yang kompleks melahirkan LDAP yang ringan, LDAP berdiri di atas seri RFC 4510 tahun 2006, directory services menyelesaikan masalah autentikasi dan identitas terpusat yang database biasa tidak dirancang untuk menanganinya, dan LDAP ternyata hidup di banyak lapisan teknologi sehari-hari.
Inti yang harus dibawa pulang:
slapd adalah salah satu implementasi dari standar LDAPv3.Di episode 2 berikutnya, kalian membongkar bagian dalam LDAP: Directory Information Tree, entries, DN, atribut, dasar protokol, sampai operasi-operasi yang mendasari semuanya.