Saya telah menulis berbagai bagian kode yang terhubung ke server LDAP dan menjalankan kueri, tetapi selalu menjadi voodoo bagi saya. Satu hal yang saya tidak benar-benar pahami adalah konsep DN yang mengikat. Berikut ini contoh menggunakan ldapsearch
alat baris perintah yang tersedia dari openldap. (Abaikan kurangnya otentikasi.)
ldapsearch -h 1.2.3.4 -D dc=example,dc=com [query]
Apa tujuan dan fungsi dari -D dc=example,dc=com
bagian ini? Mengapa kita perlu mengikat ke lokasi tertentu dalam hierarki direktori? Apakah ini untuk menentukan bagian direktori mana yang harus saya ajukan pertanyaan? Misalnya jika simpul root direktori adalah dc=com
, dan memiliki dua anak ( dc=foo
dan dc=bar
), mungkin saya ingin pertanyaan saya menjadi menentang dc=foo,dc=com
subtree dan bukan dc=bar,dc=com
subtree?
Jangan bingung antara baseDN dan bindDN .
The basedn dari pencarian adalah titik awal. Di mana ia akan mulai mencari. Cukup jelas.
The bindDN DN pada dasarnya adalah credential Anda gunakan untuk mengotentikasi terhadap LDAP. Saat menggunakan bindDN biasanya disertai dengan kata sandi yang terkait dengannya.
Dengan kata lain ketika Anda menentukan bindDN Anda menggunakan akses keamanan objek untuk melewati pohon LDAP.
Sekarang, string dc = example, dc = com bukan contoh terbaik untuk bindDN karena ini adalah "domain" untuk pohon LDAP. dc singkatan dari komponen domain dan setiap pohon LDAP mendefinisikan akarnya dengan string dalam bentuk dc = string, dc = string, ... Tapi string ini bukan "jalan" seperti sisa pohon.
Contoh yang valid adalah:
Tetapi, elemen-elemen root ini tidak dapat dipisahkan. Mereka terlihat seperti mereka adalah beberapa elemen yang mewakili jalan seperti sisa pohon, tetapi mereka tidak . Misalnya, dalam contoh terakhir objek dc = of, dc = domain tidak ada.
Bayangkan penamaan drive C: Anda seperti "D: \ my \ folder \". Setiap path di sana akan terlihat seperti "D: \ my \ folder \ my \ real \ path" yang akan membingungkan karena path file sebenarnya adalah \ my \ real \ path kan? Nah, begitulah tampilan dasar (root) LDAP, dengan seperangkat dc = elemen.
Tautan yang relevan: http://docs.oracle.com/cd/E19199-01/816-6400-10/lsearch.html
sumber