2010-07-23 130 views
0

我有2個用戶在我的廣告安裝使用相同的CN的Active Directory登錄問題

CN=jack,CN=Users,DC=xyz,DC=com and 
    CN=jack,OU=abc,DC=xyz,DC=com 

當我嘗試使用Apache目錄Studio客戶的廣告服務器進行身份驗證,並提供以下憑證

User: jack 
Password: <password> 

驗證失敗。以下憑據工作

User: CN=jack,CN=Users,DC=xyz,DC=com 
Passwprd: <password> 

當我只有一個用戶CN=tom,DC=xyz,DC=com與給定的CN

我能夠與

User: tom 
Password: <password> 

登錄,而無需指定整個DN(CN=tom,DC=xyz,DC=com) 。

我需要編寫一個模塊來針對AD安裝驗證用戶身份。我只有用戶名和密碼,而不是完全合格的BASE DN。我無法綁定到AD服務器以便能夠使用像(&(objectCategory=person)(objectClass=user)(sAMAccountName=jack))這樣的過濾器。我該怎麼做,因爲當有多個用戶具有相同的CN時,似乎會發生這種問題?

編輯:我可以配置AD服務器綁定用戶的郵件地址/ sAMAccountName而不是CN?這將解決我的問題,因爲這些是獨一無二的,而CN不是

回答

2

我找到了我正在尋找的屬性 - >userPrincipalName(UPN)。這在Active Directory中具有唯一的值,並且可以在嘗試進行身份驗證時作爲用戶名提供。所以現在我需要一個UPN列表和相應的登錄密碼。

也檢查here

0

你在'模塊'中做什麼樣的登錄?如果您無法綁定並執行ldap查詢,那麼您使用什麼界面登錄?您需要配置使用sAMAccountName的任何內容,因爲這是每個域名唯一保證唯一的唯一標識。當然,如果你在森林中有多個域名,那麼他們只需要每個域名都是唯一的,這樣可能無法很好地工作。

如果您只能以用戶的身份執行LDAP綁定,而不是查詢。也許你可以嘗試連接as sAMAccountname = jack,因爲你傳遞了credentails。