I want to add the security question and answer security feature to the
ChangePassword control. I am aware that this functionality is built into the
PasswordRecover y tool. I have implemented the PasswordRecover y with a
Password reset required; a temporary password is sent to the account on
file. I want an extra layer of security to accommodate the very unlikely
contingency that someone's e-mail account is compromised. Challenging with
the user's security question and answer will address this contingency.
Put another way, this is the setup I want:
1) User requests password reset
2) email is sent with temp password
3) user's/username's Membership info is evaluated, if comment ==
"UserResetPassw ordMustChange" user is sent to password change form
4) User changes password using an augmented ChangePassword control that
evaluates an answer against the user's security question on file.
I have completed items 1-3.
I have extended other login controls by exposing the templates, playing
around with FindControl, and writing functions on the OnWhatever events, so
I am familiar with the basic concepts involved in extending the
functionality of these things.
In the case of a ChangePassword control I imagine I will want to inspect the
answer to the security question on file during the
ChangePassword1 _ChangingPasswo rd event and e.Cancel it in the event that the
answer is incorrect.
I don't know how exactly to do this comparison, especially since the answers
to the security questions are hashed. Somehow in code I would need to do a
comparison of the cryptographic "fingerprin ts" of the user's input vs. the
hashed answer on file.
Any help out there? Somewhere someone has written a tutorial on how to do
all of the above, I'm sure, but even a few snips of code would probably set
me on my way.
Thanks!
ChangePassword control. I am aware that this functionality is built into the
PasswordRecover y tool. I have implemented the PasswordRecover y with a
Password reset required; a temporary password is sent to the account on
file. I want an extra layer of security to accommodate the very unlikely
contingency that someone's e-mail account is compromised. Challenging with
the user's security question and answer will address this contingency.
Put another way, this is the setup I want:
1) User requests password reset
2) email is sent with temp password
3) user's/username's Membership info is evaluated, if comment ==
"UserResetPassw ordMustChange" user is sent to password change form
4) User changes password using an augmented ChangePassword control that
evaluates an answer against the user's security question on file.
I have completed items 1-3.
I have extended other login controls by exposing the templates, playing
around with FindControl, and writing functions on the OnWhatever events, so
I am familiar with the basic concepts involved in extending the
functionality of these things.
In the case of a ChangePassword control I imagine I will want to inspect the
answer to the security question on file during the
ChangePassword1 _ChangingPasswo rd event and e.Cancel it in the event that the
answer is incorrect.
I don't know how exactly to do this comparison, especially since the answers
to the security questions are hashed. Somehow in code I would need to do a
comparison of the cryptographic "fingerprin ts" of the user's input vs. the
hashed answer on file.
Any help out there? Somewhere someone has written a tutorial on how to do
all of the above, I'm sure, but even a few snips of code would probably set
me on my way.
Thanks!
Comment