Membership.ValidatingPassword Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt auf, wenn ein Benutzer erstellt, ein Kennwort geändert oder ein Kennwort zurückgesetzt wird.
public:
static event System::Web::Security::MembershipValidatePasswordEventHandler ^ ValidatingPassword;
public static event System.Web.Security.MembershipValidatePasswordEventHandler ValidatingPassword;
member this.ValidatingPassword : System.Web.Security.MembershipValidatePasswordEventHandler
Public Shared Custom Event ValidatingPassword As MembershipValidatePasswordEventHandler
Ereignistyp
Beispiele
Das folgende Codebeispiel zeigt ein ValidatingPassword Ereignis, das das Format des Kennworts für einen Benutzer überprüft und die Aktion abbricht, wenn das Kennwort nicht dem erforderlichen Format entspricht.
public void Page_Load()
{
Membership.ValidatingPassword +=
new MembershipValidatePasswordEventHandler(OnValidatePassword);
}
public void OnValidatePassword(object sender,
ValidatePasswordEventArgs args)
{
System.Text.RegularExpressions.Regex r =
new System.Text.RegularExpressions.Regex(@"(?=.{6,})(?=(.*\d){1,})(?=(.*\W){1,})");
if (!r.IsMatch(args.Password))
{
args.FailureInformation =
new HttpException("Password must be at least 6 characters long and " +
"contain at least one number and one special character.");
args.Cancel = true;
}
}
Public Sub Page_Load()
AddHandler Membership.ValidatingPassword, _
New MembershipValidatePasswordEventHandler(AddressOf OnValidatePassword)
End Sub
Public Sub OnValidatePassword(sender As Object, _
args As ValidatePasswordEventArgs)
Dim r As System.Text.RegularExpressions.Regex = _
New System.Text.RegularExpressions.Regex("(?=.{6,})(?=(.*\d){1,})(?=(.*\W){1,})")
If Not r.IsMatch(args.Password) Then
args.FailureInformation = _
New HttpException("Password must be at least 6 characters long and " & _
"contain at least one number and one special character.")
args.Cancel = True
End If
End Sub
Hinweise
Das ValidatingPassword Ereignis wird ausgelöst, wenn die CreateUser -Methode, - ChangePassword Methode oder - ResetPassword Methode eines Mitgliedschaftsanbieters aufgerufen wird.
Sie können das ValidatingPassword Ereignis verwenden, um Kennwortformate und -werte für Mitgliedschaftsbenutzer zu überprüfen.
Sie können die aktuelle CreateUser- oder -Aktion abbrechen, ResetPasswordChangePasswordindem Sie die Cancel Eigenschaft des während des ValidatingPassword Ereignisses angegebenen ValidatePasswordEventArgs auf true
festlegen.
Wenn Sie die aktuelle Aktion abbrechen, indem Sie die Cancel -Eigenschaft auf true
festlegen, können Sie die FailureInformation -Eigenschaft der angegebenen ValidatePasswordEventArgs auf eine Ausnahme festlegen, die den Grund für den Fehler bei der Kennwortüberprüfung beschreibt. Die aufrufende Methode löst die Ausnahme aus, auf die die FailureInformation -Eigenschaft festgelegt ist. Wenn die FailureInformation -Eigenschaft lautet null
, löst der Aufrufer eine generische Kennwortvalidierungsfehler-Ausnahme aus.