Поделиться через


Membership.ValidatingPassword Событие

Определение

Происходит при создании пользователя, изменении пароля или сбросе пароля.

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 

Тип события

Примеры

В следующем примере кода показано ValidatingPassword событие, которое проверяет формат пароля для пользователя и отменяет действие, если пароль не соответствует требуемому формату.

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

Комментарии

Событие ValidatingPassword возникает при CreateUser вызове метода, ChangePassword метода или ResetPassword метода поставщика членства.

Событие можно использовать ValidatingPassword для проверки форматов паролей и значений для пользователей членства.

Вы можете отменить текущее CreateUserChangePasswordдействие или ResetPassword действие, задав Cancel свойство предоставленного ValidatePasswordEventArgstrue во время ValidatingPassword события.

Если отменить текущее действие, задав Cancel для свойства trueзначение, можно задать FailureInformation свойство предоставленного ValidatePasswordEventArgs исключения, описывающее причину сбоя проверки пароля. Вызывающий метод вызывает исключение, FailureInformation которому задано свойство. FailureInformation Если свойство заданоnull, вызывающий вызов вызовет исключение универсального исключения проверки пароля и сбоя.

Применяется к

См. также раздел