Создание нового пользователя AD-LDS с UserPrincipal-class всегда терпит неудачу

Если я хочу создать нового пользователя с классом UserPrincipal в каталоге ADAM (Ad LDS) (возможно, также в Active Directory, я его не проверял), он всегда завершается с таким сообщением:

"Принципал не может быть включен, потому что существующие флаги контроля учетных записей не могут быть прочитаны".

Код, который я использую, выглядит следующим образом:

using (UserPrincipal user = new UserPrincipal(ctx,userName,password,[false/true])) {
    // ...
}

1 ответ

Решение

Оказывается, это еще одна ошибка в пространстве имен AccountManagement. Создайте пользователя без каких-либо свойств, назначьте свойства позже, сохраните пользователя и включите его после сохранения. Это помогает.

using (UserPrincipal user = new UserPrincipal(ctx)) {
    user.Name = userName;
    user.UserPrincipalName = userName;
    user.SetPassword(password);
    user.Save();
    user.Enabled = true;
    user.Save();
}

Существует запись о подключении, и, к сожалению, MS пишет в этой записи, что они не хотят исправлять эту ошибку.

Другие вопросы по тегам