Compartir a través de


ChangePassword.NewPassword Propiedad

Definición

Obtiene la nueva contraseña escrita por el usuario.

public:
 virtual property System::String ^ NewPassword { System::String ^ get(); };
[System.ComponentModel.Browsable(false)]
[System.Web.UI.Themeable(false)]
public virtual string NewPassword { get; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.Themeable(false)>]
member this.NewPassword : string
Public Overridable ReadOnly Property NewPassword As String

Valor de propiedad

Nueva contraseña escrita por el usuario.

Atributos

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar una página de ASP.NET que usa un ChangePassword control e incluye un controlador para el ChangingPassword evento denominado ChangingPassword. ChangingPassword compara la contraseña antigua almacenada en la CurrentPassword propiedad con la nueva contraseña almacenada en NewPassword. Si son iguales, se produce un error al cambiar la contraseña.

El ChangePassword control establece la DisplayUserName propiedad en true para permitir que el usuario escriba su nombre de usuario. Esto significa que el usuario no tiene que iniciar sesión para ver la página.

En el ejemplo de código se supone que el sitio web de ASP.NET se ha configurado para usar ASP.NET pertenencia y autenticación de formularios, y que se ha creado un usuario cuyo nombre y contraseña se conocen. Para obtener más información, vea Cómo: Implementar la autenticación de formularios simples.

<%@ Page Language="C#" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {
    //Manually register the event-handling methods.
    ChangePassword1.ChangingPassword += new LoginCancelEventHandler(this._ChangingPassword);
  }

  void _ChangingPassword(Object sender, LoginCancelEventArgs e)
  {
    if (ChangePassword1.CurrentPassword.ToString() == ChangePassword1.NewPassword.ToString())
    {
      Message1.Visible = true;
      Message1.Text = "Old password and new password must be different.  Please try again.";
      e.Cancel = true;
    }
    else
    {
      //This line prevents the error showing up after a first failed attempt.
      Message1.Visible = false;
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title>ChangePassword including a ChangingPassword event handler</title>
</head>
<body>
  <form id="form1" runat="server">
  <div style="text-align:center">

    <h1>ChangePassword</h1>
    
    <asp:LoginView ID="LoginView1" Runat="server" 
      Visible="true">
      <LoggedInTemplate>
        <asp:LoginName ID="LoginName1" Runat="server" FormatString="You are logged in as {0}." />
        <br />
      </LoggedInTemplate>
      <AnonymousTemplate>
        You are not logged in
      </AnonymousTemplate>
    </asp:LoginView><br />
    
    <asp:ChangePassword ID="ChangePassword1" Runat="server"
      BorderStyle="Solid" 
      BorderWidth="1" 
      CancelDestinationPageUrl="~/Default.aspx" 
      DisplayUserName="true" 
      OnChangingPassword="_ChangingPassword"
      ContinueDestinationPageUrl="~/Default.aspx" >
    </asp:ChangePassword><br />
  
    <asp:Label ID="Message1" Runat="server" ForeColor="Red" /><br />

    <asp:HyperLink ID="HyperLink1" Runat="server" 
      NavigateUrl="~/Default.aspx">
      Home
    </asp:HyperLink>
    
  </div>
  </form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  Public Sub PageLoad(ByVal Sender As Object, ByVal e As EventArgs)
    'Manually register the event-handling methods.
    AddHandler ChangePassword1.ChangingPassword, AddressOf Me._ChangingPassword
  End Sub

  Public Sub _ChangingPassword(ByVal Sender As Object, ByVal e As LoginCancelEventArgs)
    If (ChangePassword1.CurrentPassword.ToString() = ChangePassword1.NewPassword.ToString) Then
      Message1.Visible = True
      Message1.Text = "Old password and new password must be different.  Please try again."
      e.Cancel = True
    Else
      'This line prevents the error showing up after a first failed attempt.
      Message1.Visible = False
    End If
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
  <title>ChangePassword including a ChangingPassword event handler</title>
</head>
<body>
  <form id="form1" runat="server">
  <div style="text-align:center">

    <h1>ChangePassword</h1>
    
    <asp:LoginView ID="LoginView1" Runat="server" 
      Visible="true">
      <LoggedInTemplate>
        <asp:LoginName ID="LoginName1" Runat="server" FormatString="You are logged in as {0}." />
        <br />
      </LoggedInTemplate>
      <AnonymousTemplate>
        You are not logged in
      </AnonymousTemplate>
    </asp:LoginView><br />
    
    <asp:ChangePassword ID="ChangePassword1" Runat="server"
      BorderStyle="Solid" 
      BorderWidth="1" 
      CancelDestinationPageUrl="~/Default.aspx" 
      DisplayUserName="true" 
      OnChangingPassword="_ChangingPassword"
      ContinueDestinationPageUrl="~/Default.aspx" >
    </asp:ChangePassword><br />
  
    <asp:Label ID="Message1" Runat="server" ForeColor="Red" /><br />

    <asp:HyperLink ID="HyperLink1" Runat="server" 
      NavigateUrl="~/Default.aspx">
      Home
    </asp:HyperLink>
    
  </div>
  </form>
</body>
</html>

Comentarios

La NewPassword propiedad contiene la nueva contraseña escrita por el usuario.

Puede usar la NewPasswordRegularExpression propiedad para definir los requisitos de la nueva contraseña. Esta expresión regular se usa para aplicar reglas de contraseña en el lado cliente. no NewPasswordRegularExpression está relacionado con la aplicación de contraseñas que se puede configurar en el nivel de almacén de datos. La contraseña debe cumplir los requisitos mínimos establecidos por el proveedor de pertenencia en las MinRequiredPasswordLengthpropiedades , MinRequiredNonAlphanumericCharactersy PasswordStrengthRegularExpression . Si la contraseña no cumple estos requisitos, se genera el ChangePasswordError evento .

Importante

La transmisión de contraseñas a través de HTTP es una amenaza de seguridad potencial. Los usuarios malintencionados pueden ver o poner en peligro las transmisiones HTTP. Para mejorar la seguridad al usar controles de inicio de sesión, debe usar el protocolo HTTPS con cifrado de capa de sockets seguros (SSL) para asegurarse de que la contraseña del usuario no se puede leer durante la postback. Para obtener más información, consulte Protección de controles de inicio de sesión.

Esta propiedad no se puede establecer mediante temas o temas de la hoja de estilos. Para obtener más información, consulte ThemeableAttribute y ASP.NET Temas y máscaras.

Se aplica a

Consulte también