使用SetPassword程序修改Active Directory密码,创建多个密码

本文关键字:密码 创建 Directory SetPassword 程序修改 Active 使用 | 更新日期: 2023-09-27 18:05:39

我正在使用UserPrincipal类的SetPassword方法更改我的交换密码。但问题是,它希望创建另一个密码,并保留旧密码。例如:我当前的密码是"123",如果我这样做:

PrincipalContext Adcontext = new PrincipalContext(ContextType.Domain, "domain", "superuser", "password");
UserPrincipal userdomain = UserPrincipal.FindByIdentity(Adcontext, "UserIWantToChange");
userdomain.SetPassword("newpassordcompletlynewinsaneinthebrain");

我尝试登录到outlook, 2个密码将工作!如果我使用"validatecredals",2也将工作。这正常吗?我该如何预防呢?

使用SetPassword程序修改Active Directory密码,创建多个密码

好了,我找到原因了。我回答自己的问题是为了帮助更多有同样问题的人。这是由于缓存域凭据。你可以禁用它。这里有一个有用的链接,解释了如何做到这一点。禁用缓存域凭据