LDAP 基本概念

一.應用場景數據庫

今天,架構師在設計應用時經常會引用一些外部的信息,好比用戶信息、組織架構、資源配置等。這些信息每每是結構化的。表現了現實世界中的組織規則,且內容相對穩定。架構

一個最多見的例子就是企業員工信息管理。企業在正常運營過程當中,部門機構和人員崗位都相對穩定,每一個員工的基本信息也是相對穩定的。這些信息組織起來後,能夠被其餘的各類IT系統共用。好比人事系統、財務系統、郵件辦公以及各類處理系統都引用同一份員工數據。若是用來驗證用戶,則能夠避免每套IT系統各自維護用戶密碼,輕鬆實現單點登陸。ide


輕量級目錄訪問協議(Lightweight Directory Access Protocol,LDAP)就是這樣一種國際標準。本質上,LDAP是基於TCP/IP的應用層協議,它不只提供了數據的組織標準,也提供了數據的訪問標準。基於LDAP的查詢服務很是相似於查字典或是電話黃頁,因爲信息室以目錄方式組織,因此稱爲 目錄服務。那麼信息存放在目錄中和存放在數據庫中什麼區別?簡單。post


員工信息應該如何組織,有應該如何對外提供服務呢?ui

最容易想到的是設計一種員工表,將員工信息存放在數據庫中。若是須要在體現人員部門機構,必然要把部門歸入數據庫。機構是有層次的。編碼

使用LDAP來管理員工信息則徹底不一樣。首先LDAP對組織、人員的完整性、全面性的定義。spa

好比,一我的(person)必須有通用名(commonName,cn)和姓(surName,sn),同時能夠有電話(telephoneNumber)、口令(userPassword)、描述(description)、參閱(seeAlso)等信息。設計


2、LDAP基本元素對象

1.目錄(Directory)繼承


2.目錄樹(DIT)

組織目錄樹,會參考x.500中對屬性的相關約定。好比

c表明國家country、o表明機構、公司、企業、單位等organization、ou表明部門organizationUnit

cn表明姓名commonName、sn表明姓氏surName

                          c=cn

                         o=ibm

ou=dev            ou=sales        ot=finance

    |                        |

cn=tom            cn=jerry


3.條目(Entry)

每一個條目都是目錄管理的對象。是LDAP的最基本的顆粒,就想字典裏面的詞條。或是數據庫裏面的記錄。每一個條目都由一個惟一的標誌名(Distinguished Name,DN),好比 cn=tom,ou=dev,o=ibm,c=cn.DN在語法上,由多個相對的標誌名(Relative Distinguished Name,RDN)組成。它們之間以逗號隔開。

4. 屬性(Attribute)

每一個條目均可以有不少屬性,好比常見的人員條目有姓名、地址、電話、職位等

5.屬性類型(Attribute Type)

6.對象類(ObjectClass)

對象類是屬性的集合。LDAP預想對不少人員組織機構中常見的對象,並將其封裝成對象類。好比人員(person)還有姓(sn)、名(cn)、電話(telephoneNumber)、密碼(userPassword)等屬性。單位員工(orgnizationPerson)是人員(person)的繼承類,除了上述的屬性以外,還含有職務(title)、郵政編碼(postalCode)、通訊地址(postalAddress)等屬性

對象類分爲三種類型:結構類型(Structual)、抽象類型(Abstract)、輔助類型(Auxiliary)

例如

                          top

                        Person                                    ePerson

orgnizationPerson            residentialPerson

inetOrgPerson

相關文章
相關標籤/搜索