2013-04-11 21 views
0

我使用下面的代碼,以找到在Active DirectoryldapUser對應於在Active Directory中提交的哪些內容?

DirectoryEntry dirEntry = null; 
using (dirEntry = new DirectoryEntry(ldapPath, ldapUser, ldapPassword)) 
{ 
    try 
    { 
     Object adsiObject = dirEntry.NativeObject; 
     result = true; 
    } 
    catch (Exception exception) 
    { 
     errorInfo.ErrorCode = -1; 
     errorInfo.ErrorMessage = exception.Message; 
    } 
} 

我有一個關於「ldapUser」無疑是用戶。

它在Active Directory中對應哪個字段? 它是「用戶登錄名」還是「2000以前的用戶登錄名」?

而且我需要知道可以在「ldapUser」字段中給出的字符數。

回答

0

你叫什麼?「用戶登錄名」是在現實中用戶主體名稱(UPN)和Windows 2000以前是sAMAccountName賦。您可以在屬性編輯器中找到兩者(您需要高級功能)。

dirEntry.Username編輯的屬性是sAMAccountName。

如果您更改用戶名,我建議您也編輯UPN。我更喜歡直接使用DirectoryEntry對象的屬性這樣的:

dirEntry.Properties["sAMAccountName"].Value = newName_; 
dirEntry.Properties["userPrincipalName"].Value = newName_ + "@yourdomain.com"; 

關於所需數量的字符,這取決於你的GPO(爲最小值。如有特殊/資本所需的字符或沒有)。 最大值爲20個字符。幾個月前我面臨這個問題。

希望有幫助。

相關問題