ChangePassword.ChangingPassword Událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastane před změnou hesla uživatelského účtu poskytovatelem členství.
public:
event System::Web::UI::WebControls::LoginCancelEventHandler ^ ChangingPassword;
public event System.Web.UI.WebControls.LoginCancelEventHandler ChangingPassword;
member this.ChangingPassword : System.Web.UI.WebControls.LoginCancelEventHandler
Public Custom Event ChangingPassword As LoginCancelEventHandler
Event Type
Příklady
Následující příklad kódu ukazuje, jak použít ASP.NET stránku, která používá ChangePassword ovládací prvek a obsahuje obslužnou rutinu ChangingPassword pro událost s názvem ChangingPassword
. Kód v obslužné rutině události porovnává staré heslo uložené ve CurrentPassword vlastnosti s novým heslem uloženým v NewPassword. Pokud jsou obě hesla stejná, změna hesla se nezdaří.
Ovládací ChangePassword prvek nastaví DisplayUserName vlastnost na , true
aby uživatelé mohli zadat svoje uživatelské jméno. To znamená, že uživatel se k zobrazení stránky nemusí přihlašovat.
Příklad kódu předpokládá, že web ASP.NET byl nakonfigurován pro použití ASP.NET členství a ověřování pomocí formulářů a že byl vytvořen uživatel, jehož jméno a heslo jsou vám známy. Další informace najdete v tématu Postupy: Implementace ověřování pomocí jednoduchých formulářů.
<%@ 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>
Poznámky
Událost ChangingPassword je vyvolána před zavolání zprostředkovatele členství zadaného MembershipProvider ve vlastnosti za účelem změny hesla pro uživatelský účet.
ChangingPassword Událost použijte k provedení jakéhokoliv zpracování, které je nezbytné před změnou hesla, jako je kontrola nového hesla, abyste se ujistili, že není v seznamu běžných hesel. Nový autorizační token pro uživatele se nastaví po události, ChangingPassword ale před událostí ChangedPassword .
Událost ChangingPassword lze zrušit nastavením Cancel vlastnosti objektu LoginCancelEventArgs na , true
pokud obslužná rutina události určí, že zprostředkovatel členství by neměl být volána.
Další informace o zpracování událostí najdete v tématu Zpracování a vyvolávání událostí.
Platí pro
Viz také
- OnChangingPassword(LoginCancelEventArgs)
- Zpracování událostí serveru ve webových stránkách ASP.NET
- Přehled ovládacích prvků přihlášení ASP.NET
- Přizpůsobení vzhledu a chování ovládacích prvků přihlášení ASP.NET
- šablony ovládacích prvků webového serveru ASP.NET
- Postupy: Zobrazení různých informací anonymním a přihlášeným uživatelům
- Karta Zabezpečení nástroje správa webu
- Zabezpečení ovládacích prvků přihlášení
- Základní postupy zabezpečení pro webové aplikace
- Zabezpečení členství