我使用目錄服務將用戶的Active Directory密碼更改爲ASP.NET網站上一組管理工具的一部分。使用ASP.NET目錄服務模擬訪問被拒絕
我收到的錯誤:
Error: Unable to change password (do you have permission?).
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
---> System.UnauthorizedAccessException: Access is denied.
(Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
--- End of inner exception stack trace ---
at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args)
at System.DirectoryServices.AccountManagement.SDSUtils.SetPassword(DirectoryEntry de, String newPassword)
at System.DirectoryServices.AccountManagement.ADStoreCtx.SetPassword(AuthenticablePrincipal p, String newPassword)
Web.config
寫着:
<authentication mode="Windows" />
<identity impersonate="true" />
當在Visual Studio調試環境設置密碼程序成功完成,但不能從不同的機器訪問時。我試圖使用模擬來允許此請求 - 該網站可以正確告訴我我的域和用戶名(使用Context.User.Identity),並且可以在Active Directory中查詢這兩種環境中的所有用戶的列表。
我PrincipalContext是:
new PrincipalContext(ContextType.Domain, "DOMAINNAME");
任何幫助非常讚賞。
模擬[IIS Authenticated User](http://support.microsoft.com/kb/306158)是不是'嗎? –
jao
2012-07-17 15:36:04