LDAP 入門知識

2021-06-04 10:32:22 字數 2033 閱讀 6170

from

如果你剛接觸ldap,你一定看了很多ldap相關的教程,看過很多教程。都不是很好,唯獨這乙份寫得最好。

dn:一條記錄的位置

dc:一條記錄所屬區域

ou:一條記錄所屬組織

cn/uid:一條記錄的名字/id

mysql用「表」儲存資料,ldap用「樹」

mysql指定一條記錄要3個條件:db、table、row。

ldap卻更自由,為什麼呢?因為ldap資料是「樹」狀的,而且這棵樹是可以無限延伸的,假設你要樹上的乙個蘋果(一條記錄),你怎麼告訴園丁它的位置呢?當然首先要說明是哪一棵樹(dc,相當於mysql的db),然後是從樹根到那個蘋果所經過的所有「分叉」(ou,呵呵mysql裡面好象沒有這 dd),最後就是這個蘋果的名字(uid,記得我們設計mysql或其它資料庫表時,通常為了方便管理而加上乙個『id』欄位嗎?)。好了!這時我們可以清晰的指明這個蘋果的位置了,就是那棵「歪脖樹」的東邊那個分叉上的靠西邊那個分叉的再靠北邊的分叉上的半紅半綠的……,暈了!你直接爬上去吧!我還是說說ldap裡要怎麼定義乙個欄位的位置吧,樹(dc=waibo,dc=com),分叉(ou=bei,ou=xi,ou=dong),蘋果(cn=honglv),好了!位置出來了:

dn:cn=honglv,ou=bei,ou=xi,ou=dong,dc=waibo,dc=com

乙個有名的畫家說過:「世上沒有相同的2個雞蛋」。當然也沒有相同的2個蘋果……,同樣,在ldap裡也不可能存在2個相同的dn。

ldap資料填充原理

一棵樹的生長,要循序漸進,如果還沒有長出某個分叉,就不可能在那個分叉里長出蘋果(問:ft!蘋果是長在分叉上的嗎?答:為了便於理解,你就當它是吧),同樣,ldap資料庫也要一步步的充實,舉乙個學校資料庫的例子,我們將要把乙個龐大的學生檔案放到ldap裡,大致需要這麼做:

---------------------------------------------

1、建立「樹根」,這是通過修改「slapd.conf」來實現的,由於現在的目的是理解,所以具體步驟就不說了,反正就是在這一步建立了乙個 「dc=ourschool,dc=org」這樣乙個「樹根」。注意:我把它理解成「目錄」,或者「容器」,甚至它本身也是檔案(蘋果)的特殊形式,熟悉 linux檔案系統的朋友會更容易理解。

2、建立18個系,分別是「dn:ou=computer,dc=ourschool,dc=org」、「dn:ou=film,dc=ourschool,dc=org」……

3、當然是在每個系裡面建立專業,比如「dn:ou=linux,ou=computer,dc=ourschool,dc=org」……

4、(開始長蘋果吧!)加學生嘍——「dn:cn=stan,ou=linux,ou=computer,dc=ourschool,dc=org」……

5、已經完成了嗎?對了!學生的詳細資訊還沒有吶!不過先這樣吧,反正記錄是可以編輯的。

ldap記錄的詳細資訊

dn:cn=stan,ou=linux,ou=computer,dc=ourschool,dc=org

objectclass:organizationalperson

cn:stan

cn:小刀

sn:小刀

description:agoodboy

(以上是一條記錄的資訊,如果把他儲存成ldif檔案,可以匯入到ldap資料庫中)

上面不是說沒有學生詳細資訊嗎?怕你著急,就馬上寫出來了,只是還沒有匯入到ldap裡,那是以後的事。這裡我先就你可能會產生的疑問做回答。

---------------------------------------------

q1:「cn」不是在「dn」裡定義了嗎,怎麼又在後面重新定義了?答:你要把「cn=stan,ou=linux,ou=computer,dc=ourschool,dc=org」看成是乙個整體,它只是屬性dn的值。

q2:怎麼後面有2個「cn」,我以哪個為準?答:區別於普通資料庫,ldap每個屬性一般可以具有多個值,這樣不好嗎?你在學校資料庫裡找我的時候,只要記得我的乙個cn就可以了,用「cn=stan」或「cn=小刀」都可以找到我!

LDAP 入門知識

專用名詞解釋 dn distinguished name 乙個目錄條目的名字 cn common name 為使用者名稱或伺服器名,最長可以到80個字元,可以為中文 ou organization unit為組織單元,最多可以有四級,每級最長32個字元,可以為中文 o organization 為組...

LDAP 入門知識

如果你剛接觸ldap,你一定看了很多ldap相關的教程,看過很多教程。都不是很好,唯獨這乙份寫得最好。dn 一條記錄的位置 dc 一條記錄所屬區域 ou 一條記錄所屬組織 cn uid 一條記錄的名字 id 實際上更多時候我只把它看成資料庫。我把它和我非常熟悉的mysql資料庫做比較,通常會得到更好...

LDAP相關知識

ldap是乙個協議,用來實現各種不同資料系統,內容系統的整合。ldap是乙個比關聯式資料庫抽象層次更高的存貯概念,與關聯式資料庫的查詢語言sql屬同一級別。ldap最基本的形式是乙個連線資料庫的標準方式。該資料庫為讀查詢作了優化。因此它可以很快地得到查詢結果,不過在其它方面,例如更新,就慢得多。使用...