2016-08-15 2 views
0

Я использую C# для создания новых учетных записей Active Directory на лета, как это:C# добавить пользователя в Active Directory с помощью служб каталогов, Enabled свойства не работает

 public static void CreateUser(string userName, string password){ 
      UserPrincipal user = new UserPrincipal(ContextType.Domain); 
      user.SetPassword(password); 
      user.Name = userName; 
      user.SamAccountName = userName; 
      user.UserPrincipalName = userName; 
      user.Enabled = true; 
      user.Save(); 
     } 

Проблемы есть, user.Enabled = true; линии Безразлично Кажется, что-то делать. Учетная запись создана успешно, но мне все равно придется вручную перейти в учетную запись с помощью AD explorer и установить ее для включения.

Что может быть неправильным здесь?

+0

Я должен добавить, что я подозреваю, что может быть параметр групповой политики или параметр реестра, позволяющий этой строке выполнять свою работу. Я просто не знаю точно. – ccsandrew

+0

Задайте пароль 'Save()', затем установите учетную запись в Enabled и 'Save()' еще раз –

+0

Спасибо, но это, похоже, не имеет значения. – ccsandrew

ответ

0

Для того чтобы учетная запись пользователя была Enabled в Active Directory, у нее должен быть пароль. Сначала установите пароль и создайте объект учетной записи, а затем включите его:

public static void CreateUser(string userName, string password){ 
    UserPrincipal user = new UserPrincipal(ContextType.Domain); 
    user.SetPassword(password); 
    user.Name = userName; 
    user.SamAccountName = userName; 
    user.UserPrincipalName = userName; 
    user.Save(); 

    // Now that the account has been created and has a password, you can enable it 
    user.Enabled = true; 
    user.Save(); 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^