UserPrincipal не позволяет мне добавлять нового пользователя - PullRequest
0 голосов
/ 28 декабря 2018

У меня небольшая проблема, когда я пытаюсь добавить нового пользователя или пытаюсь получить доступ к уже существующему пользователю в Active Directory через мою программу на C #.

    var principalContext = new PrincipalContext(ContextType.Domain, "domain", "OU=Users,OU=SI");
    UserPrincipal usr = UserPrincipal.FindByIdentity(principalContext, IdentityType.SamAccountName, samAccountStr);

Выдает исключение «Произошла ошибка операций».Я обнаружил, что предполагается, что если у пользователя нет необходимых прав для Active Directory, но я запускаю программу от имени администратора с учетной записью того, кто может добавлять пользователей в AD.Так что я действительно не знаю, что может быть не так.Когда я пытаюсь добавить нового пользователя, я пытаюсь сделать это так:

    var principalContext = new PrincipalContext(ContextType.Domain, "domain", "OU=Users,OU=SI");
    UserPrincipal usr = new UserPrincipal(principalContext);

Код существующего пользователя уже ломается, когда я вызываю FindByIdentity.Однако код для нового пользователя ломается после того, как я пытаюсь установить некоторые значения для нового пользовательского принципа.Например:

    usr.Surname = sn;

Расширенная ошибка говорит, что это: SvcErr: DSID-031007DF, проблема 5012 (DIR_ERROR)

Так что любая идея относительно того, что может быть причиной, если это не разрешениепроблема

1 Ответ

0 голосов
/ 28 декабря 2018

Необходимо указать полное отличительное имя для подразделения, включая домен.Это недопустимо:

"OU=Users,OU=SI"

Примерно так (если ваш домен был "domain.com"):

"OU=Users,OU=SI,DC=domain,DC=com"
...