2014-08-31 12 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"); 
    } 
}