我使用以下代码在活动目录中找到用户
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 :(得分:0)
您所谓的“用户登录名”实际上是 用户主体名称 (UPN),而Windows 2000之前是 sAMAccountName 即可。您可以在属性编辑器中找到它们(您需要高级功能)。
使用dirEntry.Username
编辑的属性是sAMAccountName。
如果您更改用户名,我建议您也编辑您的UPN。我更喜欢直接使用DirectoryEntry
对象的属性,如:
dirEntry.Properties["sAMAccountName"].Value = newName_;
dirEntry.Properties["userPrincipalName"].Value = newName_ + "@yourdomain.com";
关于所需字符数,取决于您的GPO(最小值以及是否需要特殊/大写字符)。 对于最大值,它是20个字符。我几个月前就遇到了这个问题。
希望有所帮助。