Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# AccountManagement创建用户返回';对象已存在';例外_C#_Active Directory_Account Management - Fatal编程技术网

C# AccountManagement创建用户返回';对象已存在';例外

C# AccountManagement创建用户返回';对象已存在';例外,c#,active-directory,account-management,C#,Active Directory,Account Management,我试图在ActiveDirectory中的特定OU中创建一个新的UserPrincipal,它返回一个异常,消息为“Object ready exists”。(显然)用户不存在于该OU中,我正在测试其存在性 我做错了什么 下面是引发异常的代码: public UserPrincipal CreateUser(string username, string pass, string givenName, string surname) { PrincipalContext

我试图在ActiveDirectory中的特定OU中创建一个新的UserPrincipal,它返回一个异常,消息为“Object ready exists”。(显然)用户不存在于该OU中,我正在测试其存在性

我做错了什么

下面是引发异常的代码:

public UserPrincipal CreateUser(string username, string pass,
        string givenName, string surname) {
    PrincipalContext context = this.principalContext;
    UserPrincipal user = new UserPrincipal(context);
    user.SamAccountName = username;
    user.UserPrincipalName = username;
    user.GivenName = givenName;
    user.Surname = surname;
    user.SetPassword(pass);
    user.Save();
    return user;
}

编辑1:在单元测试之后,我发现代码还可以。我在lib(运行测试的地方)中使用此方法,该lib由另一个启用了Windows身份验证模式的应用程序调用。可能应用程序正在向AD发送身份验证?

sAMAccountName在整个企业中必须是唯一的。您在创建用户时提到“特定OU”。您是否可能在不同的OU中有另一个具有相同用户名/sAMAccountName的用户?

sAMAccountName在整个企业中必须是唯一的。您在创建用户时提到“特定OU”。您是否有可能在不同的OU中有另一个具有相同用户名/sAMAccountName的用户?

我遇到了相同的错误,但从上面接受的答案看没有多大帮助,因为在我的情况下,问题不是因为
sAMAccountName
而是因为
Name
。试图创建的帐户具有唯一的sAMAccountName,但该名称已存在,导致此错误

The object already exists.
看起来可能会针对多个Active Directory帐户属性发生错误

  • sAMAccountName
  • 名字
推荐:
与大多数情况一样,最好在创建新条目之前检查是否存在

有用链接:

我希望这对某人有帮助


干杯,

我也遇到了同样的错误,但从上面接受的答案来看没有多大帮助,因为在我的案例中,问题不是因为
sAMAccountName
而是因为
Name
。试图创建的帐户具有唯一的sAMAccountName,但该名称已存在,导致此错误

The object already exists.
看起来可能会针对多个Active Directory帐户属性发生错误

  • sAMAccountName
  • 名字
推荐:
与大多数情况一样,最好在创建新条目之前检查是否存在

有用链接:

我希望这对某人有帮助


干杯,

是的。如您所述,该用户已存在于另一个OU中。我的代码验证用户是否仅存在于特定的OU中,而不是整个企业中。非常感谢。是的。如您所述,该用户已存在于另一个OU中。我的代码验证用户是否仅存在于特定的OU中,而不是整个企业中。非常感谢。非常有用的回答。
Name
属性映射到LDAP对象上的CN(公共名称)。CN在您创建帐户的OU中必须是唯一的,否则您将得到“对象已存在”。非常有用的答案。
Name
属性映射到LDAP对象上的CN(公共名称)。CN在您创建帐户的OU中必须是唯一的,否则您将得到“对象已存在”。