Membership.ValidatingPassword Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se produce cuando se crea un usuario o se cambia o se restablece una contraseña.
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
Tipo de evento
Ejemplos
En el ejemplo de código siguiente se muestra un ValidatingPassword evento que valida el formato de la contraseña de un usuario y cancela la acción si la contraseña no coincide con el formato necesario.
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
Comentarios
El ValidatingPassword evento se genera cuando se llama al CreateUser método, al ChangePassword método o al ResetPassword método de un proveedor de pertenencia.
Puede usar el ValidatingPassword evento para validar los formatos de contraseña y los valores de los usuarios de pertenencia.
Puede cancelar la acción actual CreateUser, ChangePasswordo ResetPassword estableciendo la Cancel propiedad del proporcionado ValidatePasswordEventArgs en true
durante el ValidatingPassword evento.
Si cancela la acción actual estableciendo la Cancel propiedad true
en , puede establecer la FailureInformation propiedad del proporcionado ValidatePasswordEventArgs en una excepción que describa el motivo del error de validación de contraseña. El método de llamada producirá la excepción en la que se establece la FailureInformation propiedad . Si la FailureInformation propiedad es null
, el autor de la llamada producirá una excepción genérica password-validation-failure.