LDAP的體系結(jié)構(gòu)由4中基本模型組成:信息模型描述LDAP的信息表達方式;命名模型描述LDAP的數(shù)據(jù)如何組織;功能模型描述LDAP的數(shù)據(jù)操作訪問方式;安全模型描述LDAP的安全機制。
1.信息模型
LDAP信息模型定義能夠在目錄中存儲的數(shù)據(jù)類型和基本的信息單位。
2.命名模型
LDAP中的命名模型,即LDAP中的條目定位方式。在LDAP中每個條目均有自己的DN(Distinguished Name,標識名)和RDN(Relative Distinguished Name,相對標識名)。DN是該條目在整個數(shù)中唯一名稱標識。RDN是條目在父節(jié)點下唯一名稱標識,如同文件系統(tǒng)中,帶路徑的文件名就是DN,文件名就是RDN.
3.功能模型
LDAP功能模型說明了能夠使用LDAP協(xié)議對目錄執(zhí)行某些操作。在LDAP中共有4類操作(共10種):
(1)查詢類操作,如搜索,比較;
(2)更新類操作,如添加條目,刪除條目,修改條目和修改條目名;
(3)認證類操作,如綁定,解綁定;
(4)其它操作,如放棄和擴展操作。
4.安全模型
LDAP的安全模型主要是基于綁定操作的,綁定操作的不同使得安全機制有所不同。3種:
(1)無認證
(2)基本認證:當使用LDAP的基本安全認證時,客戶進程通過網(wǎng)絡(luò)向服務(wù)進程發(fā)送一個分辨名(DN)和口令來標識自己。服務(wù)進程檢查客戶進程發(fā)送的分辨名(DN)和密碼是否與目錄中儲存的分辨名(DN)和密碼相匹配,如果匹配則認為通過了認證。
(3)SASL認證:即LDAP提供的在SSL和TLS安全通道基礎(chǔ)上進行的身份認證,包括數(shù)字證書的認證。
二.LDAP存儲結(jié)構(gòu)
一棵目錄信息數(shù)由若干條目(Entry)組成,每個條目有惟一的標識名DN,一個條目是一個對象,每個條目由多個“屬性(Attribute)”組成,每個屬性由一個類型和一個到多個值組成,每個屬性可以對應(yīng)一個或多個“值(Value)”。
三.LDAP的基本概念
目錄數(shù)據(jù)庫是以目錄信息數(shù)(Directory Information Tree,DIT)為存儲方式的數(shù)型存儲結(jié)構(gòu)。
*常用關(guān)鍵字及其對應(yīng)的含義
【dc】-- Domain Component-- 域名的部分,其格式是將完整的域名分成幾部分,如域名為example.com變成dc=example,dc=com
【uid】-- User ID-- 用戶ID,如“tom”
【ou】-- Organization Unit-- 組織單位,類似于Linux文件系統(tǒng)中的子目錄,是一個容器對象,組織單位可以包含其他各種對象(包括其他組織單元),如“market”
【sn】-- Surname-- 姓,如“Johansson”
【dn】-- Distinguished Name-- 唯一辨別名,類似于Linux文件系統(tǒng)中的絕對路徑,每個對象都有一個唯一的名稱,如“uid=tom,ou=market,dc=example,dc=com”,在一個目錄樹中DN總是唯一的
【rdn】-- Relative dn-- 相對辨別名,類似于文件系統(tǒng)中的相對路徑,它是與目錄樹結(jié)構(gòu)無關(guān)的部分,如“uid=ton”或“cn=Thomas Johansson”
【c】-- Country -- 國家,如“CN”或“US”等
【o】-- Organization -- 組織名,如“Example,Inc.”
四.規(guī)劃目錄樹
要實現(xiàn)LDAP,首先要規(guī)劃目錄樹,一個靈活且易于擴展的目錄樹可以減少后期維護目錄樹的工作量。
通過例子說明。假設(shè)有一個名為Example的公司(DNS名為example.com),其組織結(jié)構(gòu)如下:
(1)首先要為目錄樹建立一個“根(Root)”。根是目錄樹的最頂層,后面建立的所有對象都是基于這個根的,所以它也稱為基準DN。它可以有3種格式表示。
*使用X.500標準格式:o=example,c=CN。
*直接使用公司的DNS域名:o=example.com。
*使用公司的DNS域名的不同部分:dc=example,dc=com。
第3種格式更利于以后目錄樹的擴展,如將來Example公司合并了abc公司,之需要將dc=com最為根即可,不需要修改原有的結(jié)構(gòu)。
(2)公司中的部門作為OU,如“ou=market”。OU是目錄樹的分枝節(jié)點,下面可以包含其他分枝節(jié)點或葉子節(jié)點。
(3)用戶是目錄樹的最底層(即葉子節(jié)點),可以根據(jù)用戶所在的部門將其放置在不同的OU中,使用uid或cn描述都可以,如“uid=tom”或“cn=Thomas Johansson”。
四.LDAP服務(wù)的應(yīng)用領(lǐng)域
由于LDAP所具有的查詢效率高,樹狀的信息管理模式,分布式的部署框架以及靈活而細膩的訪問控制,是LDAP廣泛地用于基礎(chǔ)性,關(guān)鍵性信息(如用戶信息,網(wǎng)絡(luò)資源信息等)的管理。LDAP的應(yīng)用主要涉及以下幾種類型。
*信息安全類:數(shù)字證書管理,授權(quán)管理,單點登錄。
*科學(xué)計算類:DCE(Distributed Computing Envirionment,分布式計算環(huán)境),UDDI(Universal Description,Discovery and Integration,統(tǒng)一描述,發(fā)現(xiàn)和集成協(xié)議)。
*網(wǎng)絡(luò)資源管理類:MAIL系統(tǒng),DNS系統(tǒng),網(wǎng)絡(luò)用戶管理,電話號碼薄。
*電子政務(wù)資源管理類:內(nèi)網(wǎng)組織信息服務(wù),電子政務(wù)目錄體系,人口基礎(chǔ)庫,法人基礎(chǔ)庫。