LDAP (Light Weight Directory Access Protocol) adalah sebuah protokol yang mengatur mekanisme pengaksesan layanan direktori (Directory Service) yang dapat digunakan untuk mendeskripsikan banyak informasi seperti informasi tentang people, organizations, roles, services dan banyak entitas lainnya. LDAP menggunakan model client-server, dimana client mengirimkan identifier data kepada server menggunakan protokol TCP/IP dan server mencoba mencarinya pada DIT (Directory Information Tree) yang tersimpan di server. Bila di temukan maka hasilnya akan dikirimkan ke client tersebut namun bila tidak maka hasilnya berupa pointer ke server lain yang menyimpan data yang di cari. Terdapat dua service utama pada LDAP yaitu slapd yang merupakan LDAP daemon dan slurpd yang merupakan replication daemon. Slapd melayani request dari client, query dan berkomunikasi dengan backend database sedangkan slurpd melayani replikasi data agar terus terjadi sinkronisasi data antara client dan server, dan untuk memfasilitasi pengisian dan perubahan informasi data dalam direktori di gunakan LDIF (LDAP Data Interchange Format).

Konsep Dasar LDAP

Untuk mempelajari LDAP, sangatlah penting dalam memahami arti dari direktori dan untuk apa ia digunakan. Direktori dapat berupa personal address book, phone book, yellow pages bahkan web direktori seperti Yahoo. Direktori dapat membantu anda untuk menemukan informasi yang dibutuhkan, sebagai contoh yellow pages. Di sana dapat dicari mengenai alamat lengkap, nomor telepon, alamat website dan e-mail dari suatu perusahaan hanya dengan mencarinya berdasarkan ‘nama’ dari perusahaan yang telah disusun secara alphabetis pada direktori yellow pages. Dalam terminologi komputer, directory service bisa dikatakan sebagai suatu database tempat penyimpanan data, yang dapat di gunakan untuk memberikan informasi-informasi yang berkaitan dengan objeknya. Bagian direktori mungkin dapat berisi kumpulan informasi tentang user seperti sure name, first name, phone number, User ID, mail address dan lain sebagainya. Untuk memudahkan pemahaman tentang konsep direktori ini, dicontohkan model seperti gambar berikut :



Secara prinsip struktur database pada suatu directory service adalah hierarki seperti yang di tunjukkan pada gambar di atas. Suatu directory service akan memiliki item yang di jadikan sebagai root. Untuk sebuah titik root, secara umum di tunjukkan dengan suatu attribut dc (Domain Component) atau o (Organization) mungkin juga ou (Organization Unit). Kemudian pada titik daun (leaf) biasanya akan berisi item dengan attribut uid (User ID) ataupun cn (Common Name). Directory service biasanya menyimpan informasi dalam bentuk struktur tree yang dinamakan Directory Information Tree (DIT). Setiap titik pada DIT diberi suatu alamat, baik secara relatif maupun secara absolut. Untuk suatu alamat relatif sering disebut sebagai RDN (Relative Distinguish Name) sedangkan alamat yang absolut di sebut sebagai DN (Distinguish Name). Jadi apabila anda ingin mendapatkan informasi tentang user rsukmana pada gambar diatas, dapat di tuliskan dengan pengalamatan “dn=uid=imam, ou=people, dc=example, dc=com”. Konsep seperti inilah yang di gunakan oleh direktori LDAP.
Schema, ObjectClass dan attribute adalah tiga hal yang sebaiknya perlu diketahui dalam membangun
sebuah server LDAP.

  • Schema mendefinisikan seperangkat aturan yang mendeskripsikan jenis data apa saja yangakan di simpan, schema sangat membantu untuk menjaga konsistensi dan kualitas data sehingga mengurangi terjadinya duplikasi data.
  • ObjectClass merupakan sekumpulan entry yang menginformasikan jenis group, dan membutuhkan atribut yang biasanya terdiri atas attribute names, attribute type dan attribute syntax yang semuanya terkumpul dalam suatu data valid pada setiap kelasnya.
  • Attribute merupakan entri yang bersifat unik seperti uid, cn, sn ,ou, o, dc dan lain sebagainya, attribute sendiri dapat merupakan single value maupun multiple value.