使用DirectoryServices创建用户帐户时出现奇怪的sAMAccountName

时间:2011-05-30 07:17:25

标签: c# ldap directoryservices adsi

我的C#代码使用DirectoryServices命名空间来创建域用户帐户。

    DirectoryEntry deRoot = new DirectoryEntry("LDAP://OU=MYOU,DC=DOMAIN,DC=LOCAL");
    directoryEntry = deRoot.Children.Add("CN=Tony", "user");
    directoryEntry.CommitChanges();
    directoryEntry.Properties["sAMAccountName"].Value = "Tony1";
    directoryEntry.Properties["displayName"].Value = "Tony Danza";
    directoryEntry.Invoke("SetPassword", "mypass123");
    directoryEntry.CommitChanges();

这成功创建了帐户,但sAMAccountName属性包含一个相当奇怪的值,如$ HGA000-8FP94NQK9R9I或$ NGA000-B3BJ2ELT5OOD。 在我的开发域内执行时,一切都很好。

1 个答案:

答案 0 :(得分:2)

尝试在第一个CommitChanges之前设置sAMAccountName。

也许,因为sAMAccountName是必需属性,所以如果在创建对象时没有提供默认值,系统会给它一个默认值。