【发布时间】:2012-02-08 23:04:57
【问题描述】:
每隔一段时间,当我尝试更改用户密码时,我都会收到以下错误......不是每次,甚至每 10 次......它只在我们的现场制作中发生环境。
源代码非常简单,甚至在堆栈跟踪中
ActiveDirectoryMembershipProvider.ChangePassword(String username, String oldPassword, String newPassword)
在此之前,我验证了用户名和旧密码..
if ( !Membership.ValidateUser ( cpCv.LoginName, cpCv.OldPassword ) )
{
sMsg = "Failed to validate, old password is probably incorrect.";
return sMsg;
}
所以应该是正确的,与广告的连接应该是正确的,但是为什么新密码是错误的呢?
我想不通的是它有时认为哪个密码是错误的。
web.config 中成员资格提供程序上的 AD 密码? 用户旧密码? 新的?
还有什么?
有谁知道如何找出它对哪个密码不满意,或者坦率地说,有任何关于这个异常的提示吗?
在我看来,这与身份验证或会话过期有关,或者 100% 的时间都会发生(如果密码真的错误的话)
谢谢,
卡尔-
System.Runtime.InteropServices.COMException: The specified network password is not correct. (Exception from HRESULT: 0x80070056)
Generated: Wed, 08 Feb 2012 22:54:18 GMT
System.Web.HttpException (0x80004005): Exception of type 'System.Web.HttpException' was thrown. ---> System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Runtime.InteropServices.COMException: The specified network password is not correct. (Exception from HRESULT: 0x80070056)
--- End of inner exception stack trace ---
at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args)
at System.Web.Security.ActiveDirectoryMembershipProvider.ChangePassword(String username, String oldPassword, String newPassword)
at Jcdc.AccessControl.ChangePassword.DoChangePassword(String sMsg) in d:\CC\StudentPortal3G\Source\StudentPortal3G\AccessControl\ChangePassword.aspx.cs:line 129
at Jcdc.AccessControl.ChangePassword.Button1_Click(Object sender, EventArgs e) in d:\CC\StudentPortal3G\Source\StudentPortal3G\AccessControl\ChangePassword.aspx.cs:line 50
at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
at System.Web.Util.AspCompatApplicationStep.EndAspCompatExecution(IAsyncResult ar)
at ASP.accesscontrol_changepassword_aspx.EndProcessRequest(IAsyncResult ar) in c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\44dfbb4a\ab9ba47b\App_Web_aky3zvas.1.cs:line 0
at System.Web.HttpApplication.CallHandlerExecutionStep.OnAsyncHandlerCompletion(IAsyncResult ar)
Server Variables
Name Value
Page https://live.jobcorps.org/AccessControl/ChangePassword.aspx
Time 2/8/2012 4:54:18 PM Central Standard Time
IP Address 10.111.50.131
MachineName JCDC-S-SAW-001
JCDC User Jackson.David
-------------------- ---------------------------------------------------------------------------------
Powered by ELMAH, version 1.0.10617.936 (debug; BETA3; net-3.5). Copyright (c) 2007, Atif Aziz. All rights reserved.
【问题讨论】:
标签: c# asp.net active-directory asp.net-membership membership-provider