여기에 성가신 점이 있습니다. 인증 및 WinForms 프런트 엔드에 웹 서비스를 사용하는 다중 계층 CAB 응용 프로그램에서 작업하고 있습니다.로그인 일시 중지/일시 중지 만료 된 비밀번호 변경
이제 비밀번호 만료를 구현하라는 요청을 받았으며 필요한 세부 정보를 얻었으며 사용자의 비밀번호가 만료되었는지 만 확인했습니다. 로그인 프로세스를 일시 중지하는 데 문제가 있습니다. ChangePassword 양식으로 "재 지정"됩니다.
내가 해왔 던 것은 PasswordExpiredException (System.Exception을 상속하고 나중에 작동하지 않을 때 ApplicationExcetion)이라는 사용자 지정 예외를 throw하고 catch에서 ChangePassword.ShowDialog()를 호출하는 것입니다. 이것은 두통을 일으키는 원인이되고 있습니다. 왜냐하면 암호가 만료되면 로그온 할 때 잘 모르겠다는 예외를 던지고 있습니다.
그렇다면 예외가 발생했을 때 예외를 취소 할 수 있습니까? 또는 아이디어를 폐기하고 "올바르게"해야합니까? 그가 무엇인지 어떤 단서를 가지고 있지
에 로그에 호출 스택의 기본 실행을 통해 ~~>
Logon.Cs.btnOK_Click ~~> wsAuthentication.GetProvider(GetUserDBInstace(UserName))~~>
ASPNETAuthentication.Authenticate(username,password)~~>
CheckIfExipred(MembershipUser.LastPasswordChangedDate)
~Y~> throw PasswordExpiredException; //getting it to go back all the way to the UI, opening up ChangePassword.cs, leaving me with an authenticated user who's about to change his old password
~N~> //continue login, ignoring all my hard work
감사합니다. – Dani