Membuat dan Mencari Entitas di LDAP

Sekarang, saya akan menjelaskan cara membuat dan mencari entitas di LDAP melalui server. Jika Anda belum membuat LDAP server, silakan baca artikel saya Membuat LDAP Server di Ubuntu.

Entitas yang akan saya buat terdiri dari:

  1. Sebuah node bernama People (menyimpan data pengguna)
  2. Sebuah node bernama Groups (menyimpan data kelompok)
  3. Sebuah grup bernama miners
  4. Seorang bernama john

Pastikan kita berada di dalam server dan buatlah sebuah file bernama add_content.ldif. Isi dari file ini sebagai berikut:

dn: ou=People,dc=example,dc=com
objectClass: organizationalUnit
ou: People

dn: ou=Groups,dc=example,dc=com
objectClass: organizationalUnit
ou: Groups

dn: cn=miners,ou=Groups,dc=example,dc=com
objectClass: posixGroup
cn: miners
gidNumber: 5000

dn: uid=john,ou=People,dc=example,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: john
sn: Doe
givenName: John
cn: John Doe
displayName: John Doe
uidNumber: 10000
gidNumber: 5000
userPassword: johnldap
gecos: John Doe
loginShell: /bin/bash
homeDirectory: /home/john

LDIF merupakan singkatan dari LDAP Data Interchange Format. LDIF telah menjadi format pertukaran data teks standar untuk mewakili LDAP.

Kemudian, masukan data tersebut dengan perintah ldapadd.

ldapadd -x -D cn=admin,dc=example,dc=com -W -f add_content.ldif

Enter LDAP Password: (masukkan password LDAP kamu)

adding new entry "ou=People,dc=example,dc=com"

adding new entry "ou=Groups,dc=example,dc=com"

adding new entry "cn=miners,ou=Groups,dc=example,dc=com"

adding new entry "uid=john,ou=People,dc=example,dc=com"

Kita dapat apakah informasi sudah dimasukkan dengan benar dengan perintah ldapsearch.

ldapsearch -x -LLL -b dc=example,dc=com 'uid=john' cn gidNumber

dn: uid=john,ou=People,dc=example,dc=com
cn: John Doe
gidNumber: 5000

Penjelasan:

  1. -x artinya “simple” binding authentication
  2. -LLL meniadakan hasil informasi berlebihan
  3. uid=john: sebuah filter untuk menemukan pengguna bernama john
  4. cn gidNumber: data yang ingin ditampilkan.

Jika entitas yang akan dimasukkan begitu banyak dan kita ingin menginputkannya melalui Graphic User Interface (GUI), Anda bisa mencoba menggunakan PHPLDAPAdmin atau Apache Directory Studio.

PHPLDAPAdmin merupakan GUI yang bisa diakses melalui browser dan basisnya menggunakan PHP dan Apache. Versi terkini yang ada di PHPLDAPAdmin saat ini adalah 1.2.2. Jika Anda ingin menggunakan GUI ini, diharapkan versi PHP tidak melebihi versi 7.0 karena ada beberapa deprecated function build-in PHP seperti create_function yang membuat kita sulit untuk berinteraksi di PHPLDAPAdmin.

Tampilan GUI PHPLDAPAdmin

Apache Directory Studio merupakan GUI yang bisa diakses melalui desktop dan bisa diunduh di versi Windows, Linux dan MacOS. GUI ini nyaman dipakai dan bisa dijadikan alternatif dari PHPLDAPAdmin.

Tampilan GUI Apache Directory Studio

Di pembahasan selanjutnya, kita akan membahas bagaimana cara membaca data dari LDAP.

Referensi