2010-07-06 82 views
1

我正在使用asp.net的內置成員資格提供程序與安全問題和答案啓用密碼恢復對SQL Server 2005分貝。對於一些用戶來說,這工作正常,他們能夠接收他們的密碼。對於其他人而言,目前還不清楚將兩組分開的是什麼,安全答案從未得到妥善處理。無論答案是正確還是不正確,頁面只是在不確認或拒絕請求的情況下重新加載。asp.net會員不發送登錄提醒

至於事件,正在觸發VerifyingAnswer,但不是AnswerLookupError(如果回答不正確)或SendingMail(如果回答正確)。我在一個實例中運行了一條SQL跟蹤,並調用了aspnet_Membership_GetUserByName存儲過程,但之後沒有其他任何操作被調用。我期望aspnet_Membership_GetPassword將被調用,它將安全答案作爲參數傳遞,但事實並非如此。

+0

發佈您的更新作爲答案並接受它。這將完成SO工作流程並使具有相同問題的其他人輕鬆識別您的解決方案。 – 2010-07-18 00:49:19

回答

0

更新:我能解決這個問題。就我而言,我正在捕捉事件,並使用來自提出請求的用戶的其他來源(即非會員數據庫)的電子郵件地址。問題是,如果在相應的asp.net成員資格記錄中沒有電子郵件地址,即使我不依賴它,PasswordRecovery控件也會阻塞扼流圈。

我想我以前沒有意識到這一點的原因是因爲我會預料到輸入用戶名後立即觸發問題的要求,而不是另外提示用戶回答安全問題。我通過在每個會員記錄中粘貼電子郵件地址來解決問題。