2013-04-11 24 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个字符。几个月前我面临这个问题。

希望有帮助。

相关问题