[點(diǎn)晴永久免費(fèi)OA]LDAP概念和原理介紹
相信對(duì)于許多的朋友來(lái)說(shuō),可能聽(tīng)說(shuō)過(guò)LDAP,但是實(shí)際中對(duì)LDAP的了解和具體的原理可能還比較模糊,今天就從“什么是LDAP”、“LDAP的主要產(chǎn)品”、“LDAP的基本模型”、“LDAP的使用案例”四個(gè)方面來(lái)做一個(gè)介紹。 我們?cè)陂_(kāi)始介紹之前先來(lái)看幾個(gè)問(wèn)題: 1. 我們?nèi)粘5霓k公系統(tǒng)是不是有多個(gè)? 2. 每個(gè)系統(tǒng)之間是不是都有獨(dú)立的賬號(hào)密碼? 3. 密碼多了,有時(shí)候半天想不起來(lái)哪個(gè)密碼對(duì)應(yīng)哪個(gè)系統(tǒng)? 4. 每次新項(xiàng)目的開(kāi)發(fā),都需要重新開(kāi)發(fā)和維護(hù)一套用戶密碼? 5. 維護(hù)多套系統(tǒng)的用戶是不是非常頭疼? So,如今大家再也不用為上面的的問(wèn)題頭疼了,因?yàn)椤癓DAP統(tǒng)一認(rèn)證服務(wù)”已經(jīng)幫助大家解決這些問(wèn)題了。那么相信大家對(duì)“LDAP統(tǒng)一認(rèn)證服務(wù)”是干嘛的已經(jīng)有一個(gè)大概的了解了吧?那我們開(kāi)始今天要講解的內(nèi)容吧! 一、什么是LDAP? (一)在介紹什么是LDAP之前,我們先來(lái)復(fù)習(xí)一個(gè)東西:“什么是目錄服務(wù)?” 1. 目錄服務(wù)是一個(gè)特殊的數(shù)據(jù)庫(kù),用來(lái)保存描述性的、基于屬性的詳細(xì)信息,支持過(guò)濾功能。 2. 是動(dòng)態(tài)的,靈活的,易擴(kuò)展的。 如:人員組織管理,電話簿,地址簿。 (二)了解完目錄服務(wù)后,我們?cè)賮?lái)看看LDAP的介紹: LDAP(Light Directory Access Portocol),它是基于X.500標(biāo)準(zhǔn)的輕量級(jí)目錄訪問(wèn)協(xié)議。 目錄是一個(gè)為查詢、瀏覽和搜索而優(yōu)化的數(shù)據(jù)庫(kù),它成樹(shù)狀結(jié)構(gòu)組織數(shù)據(jù),類似文件目錄一樣。 目錄數(shù)據(jù)庫(kù)和關(guān)系數(shù)據(jù)庫(kù)不同,它有優(yōu)異的讀性能,但寫性能差,并且沒(méi)有事務(wù)處理、回滾等復(fù)雜功能,不適于存儲(chǔ)修改頻繁的數(shù)據(jù)。所以目錄天生是用來(lái)查詢的,就好象它的名字一樣。 LDAP目錄服務(wù)是由目錄數(shù)據(jù)庫(kù)和一套訪問(wèn)協(xié)議組成的系統(tǒng)。 (三)為什么要使用 LDAP是開(kāi)放的Internet標(biāo)準(zhǔn),支持跨平臺(tái)的Internet協(xié)議,在業(yè)界中得到廣泛認(rèn)可的,并且市場(chǎng)上或者開(kāi)源社區(qū)上的大多產(chǎn)品都加入了對(duì)LDAP的支持,因此對(duì)于這類系統(tǒng),不需單獨(dú)定制,只需要通過(guò)LDAP做簡(jiǎn)單的配置就可以與服務(wù)器做認(rèn)證交互。“簡(jiǎn)單粗暴”,可以大大降低重復(fù)開(kāi)發(fā)和對(duì)接的成本。 我們拿開(kāi)源系統(tǒng)(YAPI)做案例,只需做一下簡(jiǎn)單的幾步配置就可以達(dá)到LDAP的單點(diǎn)登錄認(rèn)證了: { "ldapLogin": {
"enable": true,
"server": "ldap://l-ldapt1.ops.dev.cn0.qunar.com",
"baseDn": "CN=Admin,CN=Users,DC=test,DC=com",
"bindPassword": "password123",
"searchDn": "OU=UserContainer,DC=test,DC=com",
"searchStandard": "mail" } }
是不是很方便呢?
二、LDAP的主要產(chǎn)品 細(xì)心的朋友應(yīng)該會(huì)主要到,LDAP的中文全稱是:輕量級(jí)目錄訪問(wèn)協(xié)議,說(shuō)到底LDAP僅僅是一個(gè)訪問(wèn)協(xié)議,那么我們的數(shù)據(jù)究竟存儲(chǔ)在哪里呢? 來(lái),我們一起看下下面的表格:
沒(méi)錯(cuò),這就是正常存儲(chǔ)數(shù)據(jù)的地方,而訪問(wèn)這些數(shù)據(jù)就是通過(guò)我們上述所說(shuō)的LDAP。相信到這里大家應(yīng)該了解兩者之間的關(guān)系了吧! 三、LDAP的基本模型 每一個(gè)系統(tǒng)、協(xié)議都會(huì)有屬于自己的模型,LDAP也不例外,在了解LDAP的基本模型之前我們需要先了解幾個(gè)LDAP的目錄樹(shù)概念: (一)目錄樹(shù)概念 1. 目錄樹(shù):在一個(gè)目錄服務(wù)系統(tǒng)中,整個(gè)目錄信息集可以表示為一個(gè)目錄信息樹(shù),樹(shù)中的每個(gè)節(jié)點(diǎn)是一個(gè)條目。 2. 條目:每個(gè)條目就是一條記錄,每個(gè)條目有自己的唯一可區(qū)別的名稱(DN)。 3. 對(duì)象類:與某個(gè)實(shí)體類型對(duì)應(yīng)的一組屬性,對(duì)象類是可以繼承的,這樣父類的必須屬性也會(huì)被繼承下來(lái)。 4. 屬性:描述條目的某個(gè)方面的信息,一個(gè)屬性由一個(gè)屬性類型和一個(gè)或多個(gè)屬性值組成,屬性有必須屬性和非必須屬性。 (二)DC、UID、OU、CN、SN、DN、RDN
(三)基本模型: 信息模型:
命名模型:
功能模型:
安全模型:
四、LDAP的使用 那我們是如何訪問(wèn)LDAP的數(shù)據(jù)庫(kù)服務(wù)器呢?
統(tǒng)一身份認(rèn)證主要是改變?cè)械恼J(rèn)證策略,使需要認(rèn)證的軟件都通過(guò)LDAP進(jìn)行認(rèn)證,在統(tǒng)一身份認(rèn)證之后,用戶的所有信息都存儲(chǔ)在AD Server中。終端用戶在需要使用公司內(nèi)部服務(wù)的時(shí)候,都需要通過(guò)AD服務(wù)器的認(rèn)證。 那么程序中是如何訪問(wèn)的呢? 我們以PHP腳本作為例子:
1. 連接到LDAP服務(wù)器; 2. 綁定到LDAP服務(wù)器; 3. 在LDAP服務(wù)器上執(zhí)行所需的任何操作; 4. 釋放LDAP服務(wù)器的連接;
這章就只介紹LDAP的一些概念和基本的原理,代碼的操作下一章再展開(kāi)來(lái)講錯(cuò)或講的不好的地方,還望指教! 該文章在 2021/6/18 9:19:03 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |