天天看點

基于雲的 LDAP 入門(上)

輕量級目錄通路協定(LDAP)是90年代早期開發的一種協定,用于驗證需要通路本地資源的使用者身份并授予使用者通路權限。

之後的幾十年中,LDAP 已成為企業 IT 系統以及身份和通路管理 (IAM) 領域的核心組成部分,除了本地功能以外還擴充了基于雲平台的新功能,同時為本地使用者和遠端使用者啟用 LDAP 身份驗證。基于雲的 LDAP 則是标準 LDAP 協定的實作方式之一。

本系列文章将介紹 LDAP 的相關基礎知識,本期将介紹 LDAP 的基本概念、運作原理以及傳統用例。在下期推送中,将深入到基于雲的 LDAP、面臨的挑戰以及在現代 IT 架構中的作用。

1. 什麼是 LDAP 協定?

1993 年,LDAP 最早是作為當時常用的 X.500 目錄協定的輕量級版本而開發,主要針對 Unix 網絡,但後來很快也在其他系統和網絡上适用。LDAP 的概念也已經從最初的協定擴充到包括廠商配套的 LDAP 軟體、伺服器,以及最新的 LDAP 托管服務。

LDAP 并不是新産品,也可以說是曆史悠久,但因其靈活性、穩定性和與特定應用的相容性,目前仍然被廣泛使用。而且在特定應用、存儲系統、Linux 伺服器等場景中仍然是首選協定。

2. LDAP 的運作原理

LDAP 協定将企業目錄中的資料進行存儲和索引以便其可被搜尋,并且支援 LDAP 伺服器與本地網絡中的用戶端、裝置和使用者進行通信。LDAP 中可進行添加、删除、修改和搜尋 LDAP 目錄資訊,及身份驗證和授權等操作。一旦使用者輸入了正确的使用者名和密碼,LDAP 就會對其進行身份驗證并授權其通路各種 IT 資源,包括檔案、應用、伺服器、網絡裝置等支援 LDAP 的資源。

LDAP 将資料存儲在名為目錄資訊樹 (DIT) 的分層結構中,DIT 将資料編排成适用 LDAP 的分支結構,使管理者更容易檢索,更好地處理使用者通路政策。

3. 傳統上如何使用和設定 LDAP?

從技術層面講,LDAP 隻是一種協定。而 LDAP 伺服器這一新産品不僅包含 LDAP 協定,還将協定在軟體中執行個體化,用于對 LDAP 用戶端和終端使用者的通路授權。在基于雲的 LDAP 誕生之前,兩大傳統 LDAP 執行個體分别是 OpenLDAP 和微軟 Active Directory。

1)OpenLDAP

OpenLDAP 開發于1998年,是 LDAP 的免費開源版本,也是至今仍在使用的曆史最悠久的 LDAP 執行個體之一。OpenLDAP 作為一個高度集中的軟體,無論是使用者界面還是附加協定都并不豐富,另外還要求企業對自己的目錄伺服器進行托管、配置和管理。手動配置企業目錄的優勢在于靈活性、不挑平台,缺點則是難以管理。

OpenLDAP 的工具匮乏和對 IT 人員的巨大需求促使一些企業尋求更強大的目錄服務。于是,微軟 Active Directory 成為不少企業多年來經常選擇的方案。

2)微軟 Active Directory

微軟 Active Directory(AD)是市面上最常見的一大目錄服務。和 OpenLDAP 的基礎産品相比,AD 具有圖形使用者界面(GUI)和其他工具,在設定、配置和運維方面也更簡單。

在系統相容性上,OpenLDAP 适用于 Linux、Mac、Windows 等其他系統,而 AD 則最适用于 Windows 生态的終端和應用,對于其他作業系統通常需要附加元件來擴充管理,在靈活性上有所欠缺,也增加了其他系統裝置的部署複雜性和成本。

此外,AD 專用 Kerberos 協定,雖然也支援 LDAP 但并不是作為首選協定。

LDAP 使用查詢功能從 AD 中提取資訊,包括判斷使用者是否應有權限通路特定 IT 資源、收集有關特定使用者的屬性資料,甚至根據 AD 資料庫中的内容修改通路權限。當 IT 資源查找使用者是否應該有通路權限時,LDAP 就會搜尋相關資料進行綁定,然後 AD 伺服器使用 LDAP 協定向 IT 資源做出響應,并提供相應資訊。

雖然 AD 是十分常見的目錄服務方案,但無法滿足基于雲的企業業務模型需求。根本原因在于 AD 使用本地伺服器,最初也不是為雲環境設計的,是以如果要将 AD 與雲資源內建就需要使用 Azure AD 等附加元件,實施過程可能很複雜。

進入雲計算時代後,越來越多企業意識到 LDAP 的管理問題,部分企業正在尋找更适合雲環境的解決方案,基于雲的 LDAP 就是目錄協定的未來新方向。下期文章将探讨企業在管理 LDAP 中遇到的困難以及如何使用基于雲的 LDAP 解決這些問題,敬請期待~

繼續閱讀