2009-06-15 126 views

回答

14

對於希望使用通用服務器(如OpenLDAP)的hetrogenous環境。 AD的優勢通常在於它已經包含了內部用戶的用戶帳戶 - 這些帳戶可以與單獨的LDAP服務器保持同步,但這會增加複雜性。

就協議的具體細節而言,Oracle虛擬目錄的文檔有一個相當不錯的總結。 (OVD是可用於代理AD和翻譯一些其怪癖成更標準接口的產品):

http://download.oracle.com/docs/html/E10286_01/app_bundled_plugins.htm#CHDGDBBG

測距屬性在Active Directory和ADAM屬性 與更 然後返回1000個值1000(在 的某個時間,其名稱包括返回值的 值範圍(或對於Windows 2003爲 1500)。範圍是 回到形式的客戶端: 成員; 1-1000:someValue中爲了 獲得下一個千項,則 客戶端應用程序必須以某種方式知道 重複查詢,並要求 屬性成員; 1001 -2000。與其他 目錄產品相比,此 需要應用程序以 特殊方式處理 Microsoft Active Directory。

密碼更新微軟 Active Directory和ADAM周圍有如何 用戶的密碼可以使用LDAP更新特殊 規則:

  • 密碼可以僅通過安全的SSL連接進行更新。
  • 如果用戶更新自己的密碼,原始密碼必須 包括在修改與刪除 新密碼是一個修改 添加相同的修改操作。
  • 只有管理員可以在不知道 以前的密碼的情況下重置用戶的密碼。
  • Active Directroy不使用userPassword屬性,它使用 unicodePwd屬性(即 quoted-UTF16-hex-padded-base64 encoded)。

對象類映射大多數LDAP目錄 使用的inetOrgPerson和 groupOfUniqueNames對象爲 用戶和組班。 Microsoft活動目錄 使用用戶和組對象類 具體 到Active Directory NOS要求微軟 屬性。」

這些都是一些主要的,但還有其他的。

47

以下是我知道的一些區別。可以將OpenLDAP稱爲與許多其他供應商的LDAP服務器(Fedora DS 389,Oracle Internet Directory,IBM Tivoli Directory Server)類似的通用LDAP服務器。活動目錄對微軟產品套件(即:運行微軟域)進行更多定製。每個人都有優點和缺點。

安裝後OpenLDAP爲空,並且沒有結構(稱爲DIT)。它甚至沒有開箱即用的根條目。 AD將發佈一個基本結構,並且已經爲您準備好GUI工具來開始填充用戶。 OpenLDAP和其他人希望你手動創建DIT,所以你必須設計一個結構。因此,如果您的項目涉及到類似的事情,您必須計劃將您的用戶,組,角色放在哪裏,並考慮ACL或分支委派。例如,你可能有一個widgets.com的域名。在公元出貨結構將是這個樣子:

+ dc=widgets,dc=com 
|-- cn=Computers 
|-- cn=Users 
|-- cn=Groups 

OpenLDAP中(或其他香草實現),你可以設計自己的DIT在許多方面。您可以遵循域組件(dc = foo,dc = bar)約定,或者您可以使用按地理區域組織的東西(o = foo,c = bar)。這並不重要,但你應該去一個或另一個。 AD使用DC約定,並沒有給你一個選擇,但其他LDAP服務器可以遵循任何約定。如果你想融入一個大的MS域名,我會堅持使用DC約定來保持一致性和易於集成。但在這個例子中,我們將沒有區域或單位(OU)在一個國家(C)假裝我們公司組織(O):

+ o=widgets,c=us 
|-- cn=Machines 
|-- cn=People 
|-- cn=Groups 
|-- cn=Roles 

然後你可以擴展你的方案如果需要的話。如果要擴展AD架構,AD將要求您通過Active Directory架構編輯器MMC控制檯插件(創建自定義MMC)添加架構元素。之後,它非常簡單。首先定義你的屬性,然後定義你的對象類。 OpenLDAP要求你編寫一個LDIF(首先還需要屬性,然後是對象類)。或者使用Apache Directory Studio和OpenLDAP,這是一個非常棒的圖形用戶界面和管理工具,並且使OpenLDAP在AD方面的易用性更好。

AD不允許您匿名查詢389上的所有內容。如果您想獲取架構信息(稱爲目錄),則必須在3289上進行查詢並進行身份驗證。這讓我想起LDAP的DIB與DIT隱藏,但我不知道AD是否正在嘗試在這裏做同樣的事情。

AD的默認查詢限制爲10,000。如果您想一次性吸收所有內容,則必須在客戶端或代碼中使用分頁控件,或者修改正在搜索的域控制器上的默認查詢限制。請注意,分頁控件可能有問題。我已經讓他們使用Netscape庫在java中工作,但即使他們聲稱他們支持分頁控件(YMMV),但某些LDAP客戶端似乎仍然無法正常工作。

AD的認證有點奇怪。您可以通過電子郵件格式的用戶名(-D username @ domain)進行身份驗證,也可以使用完整的用戶DN。如果在OpenLDAP中有這樣的方法,我不知道該怎麼做,但我不打擾。與其他LDAP服務器相比,這很奇怪。普通的LDAP通常遵循DN格式(cn = username,cn = Users,o = widgets,c = us)。

我想簡而言之,AD是有見地的,OpenLDAP是通用的。因此,AD很容易站起來,但OpenLDAP可以更靈活。