Ниже приведен код, который используется для сброса пароля.
Я хочу остановить это поведение.
Только новый пароль должен работать. пользователь не должен входить в систему со старым паролем.После сброса пароля пользователя в Active Directory с помощью C# работают как старые, так и новые пароли
using (var search= new DirectorySearcher(dir))
{
search.Asynchronous = false;
search.CacheResults = false;
dirSearch.Filter = "(&(objectCategory=User)(objectClass=person)(name=" + UserName.Trim() + "))";
SearchResult result = dirSearch.FindOne();
if (result != null)
{
using (var entryUpdate = result.GetDirectoryEntry())
{
entryUpdate.Invoke("setpassword", new object[] { NewPassword });
entryUpdate.CommitChanges();
//entryUpdate.RefreshCache();
}
}
result = null;
}
Может ли кто-нибудь помочь мне в этом? –
Возможно, вы захотите спросить об этом на http://serverfault.com/, потому что разрешение более одного пароля в первую очередь кажется особенным и, вероятно, даже невозможным. Насколько я могу судить, это не совсем возможно, во-первых, так что у вас, вероятно, есть что-то еще. Это вряд ли будет связано с вызовами C#, а [вызов, который вы делаете] (https://msdn.microsoft.com/en-us/library/aa746344 (v = vs.85) .aspx) не упоминает о несколько паролей или сначала удалить что-то. Вы должны хотя бы проверить возвращаемое значение, если это возможно. – Quantic