Я хотел бы попросить вас помочь в следующем вопросе.Я работаю над специальным приложением, будет использоваться только мной и только один раз.
Часть этого - выполнить сброс пароля для более чем 3000 пользователей в AD и отправить им новые учетные данные.
Я могу читать из AD как обычный пользователь, но мне нужно использовать привилегированную учетную запись для ее изменения.Как я могу это сделать?Я знаю, что могу использовать PowerShell и сделать это за считанные секунды, но я хотел бы узнать, как это сделать в C #.
Мой код для поиска пользователя прост
public class ADSecurity
{
public static string getUserName(string sam)
{
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, sam);
return user.Name;
}
}
Как я могу сделать то же самое, но как другой пользователь?
Я видел несколько руководств, но никто из них не объяснял ... просто совет о том, как имитировать, но ничего о том, как его использовать.Здесь была одна статья об олицетворении, но с использованием протокола LDAP (DirectoryEntry
).Но, как я понимаю, это действительно медленно.
Любой совет приветствуется.Мне нужно запустить его через 2 дня, поэтому в худшем случае для этого я использую PowerShell.
Спасибо.