2014-08-31 40 views
-1
DirectoryEntry.Invoke("SetPassword", new object[] { password }); 

是给拒绝访问的错误是在ASP.NET应用程序给错误,但它是在一个控制台应用程序可以正常使用。DirectoryEntry.Invoke(“SetPassword”,new object [] {password});在asp.net应用程序

这是我得到的错误:

异常已通过调用的目标引发异常。

内部错误是Access Denied

+0

{“异常已通过调用的目标引发异常。”}这是我收到的错误。内部错误是访问被拒绝。 – 2014-08-31 05:34:30

回答

2

ASP.NET下运行的安全上下文当您运行命令行的东西比不同。检查你的应用程序池运行的是什么。它通常作为低权限用户运行。

+0

我以管理员权限授予AD中的应用程序池帐户权限。还是一样。 – 2014-08-31 05:55:00

-1

上述问题是解决

using (var context = new PrincipalContext(ContextType.Domain, "DomainName", null, "UserName", "Password")) 
{ 
    using (var user = UserPrincipal.FindByIdentity(context, IdentityType.SamAccountName, "username")) 
    { 
      user.SetPassword("Password"); 
    } 
}