如何代理多個 LDAP 伺服器,並且仍在代理程式上對使用者進行分組?

如何代理多個 LDAP 伺服器,並且仍在代理程式上對使用者進行分組?

我有兩個問題希望找到共同的解決方案。

首先,我需要找到一種方法將多個 LDAP 伺服器(跨多個網域的 Windows AD)饋送到單一來源中進行驗證。這也是使無法與多個 LDAP 伺服器本地通訊的應用程式正常工作所必需的。我讀過這可以透過 Open LDAP 來完成。還有其他解決方案嗎?

其次,我需要能夠將這些使用者新增至群組中,而無法對我代理程式的 LDAP 伺服器進行任何變更。

最後,這一切都需要在 Windows Server 2003/2008 上運作。

我在一個非常大的組織工作,創建多個群組並向其中添加、移動和刪除大量用戶並不是一項小任務。這通常需要大量的文書工作和大量的時間。時間是我們平常沒有的東西;避開文書工作只是一個優點。

我在這方面的經驗非常有限,所以我甚至不確定我的要求是否有意義。 Atlassian Crowd 非常接近我們的需求,但缺乏自己的 LDAP 前端。有人可以提供任何建議或產品名稱嗎?

感謝您的任何幫助,您可以提供。

答案1

我推薦 OpenLDAP 的meta後端,它充當代理,將來自多個不同伺服器的多個命名上下文整合到一棵樹中。我已經成功地使用它在幾個 Windows 2003 網域上執行此操作。

例如,如果您有多個名為ONE.COMPANY.COM和的 AD 網域TWO.COMPANY.COM,則最終將得到以下 LDAP 樹:

  • dc=公司,dc=com
    • dc=一、dc=公司、dc=com
      • 網域中的使用者和群組ONE
    • dc=二、dc=公司、dc=com
      • 網域中的使用者和群組TWO

因此,您可以將身份驗證請求基於基本 DN dc=company,dc=com,這將從任一伺服器傳回條目。

當然,您必須確保您擁有一個可以唯一標識所有網域中的用戶的屬性,例如電子郵件地址(如果您有兩個用戶,則不想使用登入名稱jdoe!除非您確定登入是在所有網域中都是唯一的)。

查看OpenLDAP 的後台元手冊頁

其次,我需要能夠將這些使用者新增至群組中,而無法對我代理程式的 LDAP 伺服器進行任何變更。

您可以輕鬆地將本機資料庫新增至相同 OpenLDAP 實例,以包含引用來自所有代理網域的使用者的群組。他們在此伺服器上將具有唯一的 DN,只需將它們添加到群組中即可。

答案2

這是一篇很棒的文章,概述瞭如何逐步設定它:https://www.ltb-project.org/documentation/sasl_delegation.html (請參閱「多個 LDAP 目錄上的 Pass-Trough 驗證 - 使用 OpenLDAP ldap 後端」)

答案3

您的組織是否使用 Active Directory?您可以使用 LDAP 輕鬆地與 AD 交互,並且由於 AD 是一個複製的分散式系統,因此它本質上是單一來源。或者也許我遺漏了您的某些要求和/或您的環境?

相關內容