首页 新闻 搜索 专区 学院

AD域DirectoryEntry修改密码“SetPassword”问题

0
悬赏园豆:20 [已关闭问题] 关闭于 2015-03-06 23:12

DirectoryEntry userEntry = FindObject("user", userName);
if (userEntry == null)
{
  parameter = "没找到用户!";
}
else
{
  userEntry.AuthenticationType = AuthenticationTypes.Secure;
  object[] PassWord = new object[] { password };
  object ret = userEntry.Invoke("SetPassword", "ceocio");
  userEntry.CommitChanges();
}

报错:

System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.UnauthorizedAccessException: 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))
--- 内部异常堆栈跟踪的结尾 ---
在 System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args)

 

请高手指点~~~

鹏城浪子的主页 鹏城浪子 | 初学一级 | 园豆:17
提问于:2014-11-28 20:29
< >
分享
所有回答(4)
0

FYI

 

http://forums.asp.net/t/1619255.aspx?Getting+System+Reflection+TargetInvocationException+while+trying+to+change+the+AD+password+of+an+user+from+web+apps+using+C+

Yu | 园豆:12944 (专家六级) | 2014-11-28 22:36
0

最大可能是你输入的密码不符合Windows的密码策略

Tonyzhang | 园豆:202 (菜鸟二级) | 2015-02-06 11:28
0

楼主的问题解决了吗,能否告诉怎么解决的?谢谢了 

digndang | 园豆:202 (菜鸟二级) | 2017-02-24 18:10
0

object ret = userEntry.Invoke("SetPassword", "ceocio");改成

 

userEntry.Invoke("ChangePassword", new object[] {"oldpassword", "ceocio"});

gerogezhao | 园豆:204 (菜鸟二级) | 2017-10-27 14:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册