LDAP的英文全稱是Lightweight Directory Access Protocol,簡稱為LDAP。它是基于X.500標準的,但是又比它簡單許多,并且可以根據需要定制的一種目錄服務協議。與X.500不同,LDAP支持TCP/IP,這對訪問Internet是必須的。LDAP的核心規范在RFC中都有定義,所有與LDAP相關的RFC都可以在LDAPman RFC網頁中找到。
目錄服務的工作模型是客戶機/服務器模型。1988年,CCITT組織首先創建了X.500標準全面描述了這一模型,包括目錄服務器的目錄結構、命名方法、搜索機制以及用于客戶機與服務器通信的協議DAP(Directory Access Protocol)。此標準很快被ISO組織引用,編號為ISO 9594。但是,在實際應用的過程中,X.500存在著不少障礙。由于DAP這種應用層的協議是嚴格遵照復雜的ISO七層協議模型制定的,對相關層協議環境要求過多,在許多小系統上無法使用,TCP/IP協議體系的普及更使這種協議越來越不適應需要。在這種情況下,DAP的簡化版棗LDAP應運而生。早期設計的LDAP服務器不是獨立的目錄服務器,主要扮演LDAP客戶機與X.500服務器間網關的角色,既是LDAP的服務器又是X.500的客戶機。如今的LDAP服務器可取代X.500服務器而獨立提供服務。
LDAP服務器的目錄組織以“條目”為基本單位,結構類似樹形,每一個條目即是樹上的一個分枝節點或葉子。一個條目由多個“屬性”組成,每個屬性又由一個“類型”和一到多個“值”組成。LDAP協議直接基于面向連接的TCP協議實現,定義了LDAP客戶機和LDAP服務器間的通信過程和信息格式。LDAP服務器在服務端口(缺省端口號為389)監聽,收到客戶機的請求后,建立連接,開始會話。活動目錄與DNS協議的結合的意義在于使內部網與外部網命名方式保持一致,這樣便于整個網絡的管理。LDAP協議是用于查詢和檢索活動目錄信息的目錄訪問協議。由于它是基于工業標準的目錄服務協議,使用 LDAP 的程序可以發展成與其他目錄服務共享活動目錄信息,這些目錄服務同樣支持LDAP。活動目錄信息活 動目錄使用LDAP 目錄訪問協議作為它與其他應用或者目錄服務交換信息的手段。LDAP 已經成為 目錄服務的標準,它比X.500 DAP 協議更為簡單實用一些。Microsoft 已經在Exchange Server 系統中提供了LDAP v2 和LDAP v3 的支持, 在WIN2K 的活動目錄服 務中將提供更為全面的支持。
值得一提的是LDAP 協議中采用的命名格式, 因為我們需要通過名字信息訪問目錄對象,所以名字格式對于用戶或者應用程序非常重要。活動目錄支持大多數的名字格式類型。較為常用的格式有以下兩種:
(1) RFC822 命 名 法
這種命名法的標準格式為:object_name@domain_name,形式非常類似于電子郵件地址,比如Myname@mydomain.com。活動目錄為所有的用戶提供了這種式的好名字,所以用戶可以直接使用該友好名字當作電子郵件地址,也可以用作登錄系統時的賬戶名。
(2) LDAP URL 和X.500 名 字
任何一個支持LDAP 的客戶都可以利用LDAP名通過LDAP 協議訪問活動目錄,LDAP 名不像普通的Internet URL 名字那么直觀,但是LDAP 名往往隱藏在 應用系統的內部,最終用戶很少直接使用LDAP 名。LDAP 名使用X.500 命名規 范,也稱為屬性化命名法,包括活動目錄服務所在的服務器以及對象的屬性信息。