ldap基本dn_LDAP学习笔记 - 基础
LDAP協(xié)議
背景
X.400
X.500(X.519 DAP)
LDAP
1、在ITU制定X.400系列Email標準時,標準制定者們發(fā)現(xiàn),需要一種通過網(wǎng)絡獲取通訊錄的標準化方法。這種通過網(wǎng)絡訪問目錄服務的需求,推動了X.500系列標準的開發(fā),尤其是其核心標準X.519 DAP目錄訪問協(xié)議。由于X.500標準嚴格遵循了OSI七層網(wǎng)絡架構(gòu),因此實現(xiàn)復雜,效率也成問題,所以業(yè)界采用情況不理想。
2、IETF意識到X.500系列標準的問題后,對DAP協(xié)議進行了改造和簡化提出了輕量級目錄訪問協(xié)議LDAP。LDAP幾乎保留了所有的X.519標準要求的功能,但網(wǎng)絡協(xié)議選擇了最常用的TCP/IP協(xié)議。
概念
1、LDAP
輕量目錄訪問協(xié)議(Lightweight Directory Access Protocol)的縮寫�LDAP標準
實際上是在X.500標準基礎上產(chǎn)生的一個簡化版本
2、目錄服務
什么是目錄服務?
目錄服務就是按照樹狀存儲信息的模式
目錄服務的特點? 目錄服務與關系型數(shù)據(jù)庫不同?
(1)目錄服務的數(shù)據(jù)類型主要是字符型, 而不是關系數(shù)據(jù)庫提供的整數(shù)、浮點數(shù)、日期、貨幣等類型
(2)目錄有很強的查詢(讀)功能,適合于進行大量數(shù)據(jù)的檢索
但目錄一般只執(zhí)行簡單的更新(寫)操作,不支持批量更新所需要的事務處理功能
(3)它主要面向數(shù)據(jù)的查詢服務(查詢和修改操作比一般是大于10:1),不提供事務回滾(rollback)機制.
(4)目錄具有廣泛復制信息的能力,適合于多個目錄服務器同步/更新
目錄是一組具有類似屬性、以一定邏輯和層次組合的信息。常見的例子是通訊簿,由以字母順序排列的名字、地址和電話號碼組成。
目錄服務是一種在分布式環(huán)境中發(fā)現(xiàn)目標的方法。目錄具有兩個主要組成部分:
第一部分是數(shù)據(jù)庫,數(shù)據(jù)庫是分布式的,且擁有一個描述數(shù)據(jù)的規(guī)劃。
第二部分則是訪問和處理數(shù)據(jù)的各種協(xié)議。
目錄服務其實也是一種數(shù)據(jù)庫系統(tǒng),只是這種數(shù)據(jù)庫是一種樹形結(jié)構(gòu),而不是通常使用的關系數(shù)據(jù)庫。目錄服務與關系數(shù)據(jù)庫之間的主要區(qū)別在于:二者都允許對存儲數(shù)據(jù)進行訪問,只是目錄主要用于讀取,其查詢的效率很高,而關系數(shù)據(jù)庫則是為讀寫而設計的。
提示:目錄服務不適于進行頻繁的更新,屬于典型的分布式結(jié)構(gòu)。
LDAP是一個目錄服務協(xié)議,目前存在眾多版本的LDAP,而最常見的則是V2和V3兩個版本,它們分別于1995年和1997年首次發(fā)布。
特點
LDAP的結(jié)構(gòu)用樹來表示,而不是用表格。
LDAP可以很快地得到查詢結(jié)果,不過在寫方面,就慢得多。
LDAP提供了靜態(tài)數(shù)據(jù)的快速查詢方式。
LDAP不支持事務、不能進行回滾。
Client/Server模型,支持分布式結(jié)構(gòu)。
LDAP是一種開放Internet標準,LDAP協(xié)議是跨平臺的Interent協(xié)議。
其中,對于Client/Server模型,Server 用于存儲數(shù)據(jù),Client提供操作目錄信息樹的工具,數(shù)據(jù)庫操作client用于對ldap server庫進行操作。
(1)工具:ldapadd, ldapsearch,ldapdelete
實用client:用于將ldap server庫在實際工作中使用
(2)工具:radius+ldap, pam+ldap
這些工具可以將數(shù)據(jù)庫的內(nèi)容以文本格式(LDAP 數(shù)據(jù)交換格式,LDIF)呈現(xiàn)在您的面前。
認證機制
基本認證
通過用戶名和密碼進行身份識別,又分為簡單密碼和MD5密碼認證
SASL(Simple Authentication and Secure Layer)
一種在網(wǎng)絡協(xié)議中用于認證和數(shù)據(jù)安全的框架
SSL和TLS
分布式LDAP 是以明文的格式通過網(wǎng)絡來發(fā)送信息的,包括client訪問ldap的密碼。TLS(SSL的后繼者,由OpenSSL 包)加密機制來解決這個問題。
端口號
Ldap端口號(顯然提供分布式ldap)——389,636
[root@vmmac modules]# cat /etc/services | grep ldap
ldap 389/tcp 明文
ldap 389/udp 明文
ldaps 636/tcp # LDAP over SSL
ldaps 636/udp # LDAP over SSL
基本模型
LDAP的基本模型是建立在“條目”(Entry)的基礎上。一個條目是一個或多個屬性的集合,并且具有一個全局唯一的“可區(qū)分名稱”(用dn表示)。與關系型數(shù)據(jù)(后面簡稱數(shù)據(jù)庫)進行類比,一個條目相當于數(shù)據(jù)庫中的一條記錄,而dn相當于數(shù)據(jù)庫中記錄的關鍵字,屬性相當于數(shù)據(jù)庫中的字段。
提示:dn必須是全局唯一的。
LDAP中,將數(shù)據(jù)組織成一個樹形結(jié)構(gòu),這與現(xiàn)實生活中的很多數(shù)據(jù)結(jié)構(gòu)可以對應起來,而不像設計關系型數(shù)據(jù)庫的表,需要進行多種變化。例如,下圖就是一個樹形結(jié)構(gòu)的數(shù)據(jù)。
目錄樹
1、在上圖所示的樹形結(jié)構(gòu)中,樹的根結(jié)點是一個組織的域名(dlw.com),其下分為3個部分,分別是managers、people和group,可將這3個組看作組織中的3個部門,如managers用來管理所有管理人員,people用來管理登錄系統(tǒng)的用戶,group用來管理系統(tǒng)中的用戶組。當然,在該圖中還可繼續(xù)增加其他分支。
2、對于上圖所示的樹形結(jié)構(gòu),使用關系數(shù)據(jù)庫來保存數(shù)據(jù)的話,需要設置多個表,一層一層分別保存,當需要查找某個信息時,再逐層進行查詢,最終得到結(jié)果。
3、若使用目錄來保存該圖中的數(shù)據(jù),則更直觀。圖中每個結(jié)點用一個條目來保存,不同類型的結(jié)點需要保存的數(shù)據(jù)可能不同,在LDAP中通過一個稱為objectClass的類型來控制不同結(jié)點需要的數(shù)據(jù)(稱為屬性)。
(1)用戶組可以配置
objectClass: posixGroup
objectClass: top
(2)用戶可以配置
objectClass: top
objectClass: posixAccount
objectClass: inetOrgPerson
4、對于目錄中的數(shù)據(jù)怎樣進行引用呢?前面提到過,每一個條目都有一個dn,因為dn是唯一的,因此就可找到需要結(jié)點的數(shù)據(jù)。dn的構(gòu)造方式如下:
首先得到條目自己的名稱(rdn,稱為相對dn),然后開始向上逐級查找父結(jié)點,一直到根項為止。例如,對于上圖中最右下方的結(jié)點,其dn為:
dn: cn=ldap, ou=group, o=dlw.com
通過這樣的方式,即可唯一標識每一個結(jié)點。
在現(xiàn)實生活中,有很多這種樹形結(jié)構(gòu)的數(shù)據(jù),如計算機文件系統(tǒng)的目錄結(jié)構(gòu)、Internet中的域名等。這些類型的數(shù)據(jù),只要不需要頻繁的更新,都適合用目錄來保存。
功能
在LDAP的功能模型中定義了一系列利用LDAP協(xié)議的操作,主要包含以下4部分:
查詢操作 :允許查詢目錄和取得數(shù)據(jù),其查詢性能比關系數(shù)據(jù)庫好。
更新操作 :目錄的更新操作沒關系數(shù)據(jù)庫方便,更新性能較差,但也同樣允許進行添加、刪除、修改等操作。
復制操作 :前面也提到過,LDAP是一種典型的分布式結(jié)構(gòu),提供復制操作,可將主服務器的數(shù)據(jù)的更新復制到設置的從服務器中。
認證和管理操作 :允許客戶端在目錄中識別自己,并且能夠控制一個會話的性質(zhì)。
OpenLDAP
LDAP協(xié)議的自由和開源的實現(xiàn)。
并不包括后臺數(shù)據(jù)庫存儲,OpenLDAP配合Berkeley DB可使其讀操作的效率得到很大提高。
Berkeley DB是一個開源的文件數(shù)據(jù)庫,介于關系數(shù)據(jù)庫與內(nèi)存數(shù)據(jù)庫之間,使用方式與內(nèi)存數(shù)據(jù)庫類似,它提供的是一系列直接訪問數(shù)據(jù)庫的函數(shù),而不是像關系數(shù)據(jù)庫那樣需要網(wǎng)絡通訊、SQL解析等步驟。
安裝
通過下載tar包,解壓編譯安裝
通過掛載方式,yum,zypper安裝
配置
配置slapd.conf
--了解LDAP Schema
配置LDIF文件
--LDIF文本條目格式
--了解objectClass
--了解Attribute
--創(chuàng)建LDIF文件
總結(jié)
以上是生活随笔為你收集整理的ldap基本dn_LDAP学习笔记 - 基础的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: app式成语_疯狂的成语app
- 下一篇: java文档注释生产api没有注释_一个