MembershipUser.ChangePassword(String, String) Methode
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.
Aktualisiert das Kennwort für den Mitgliedschaftsbenutzer im Mitgliedschaftsdatenspeicher.
public:
virtual bool ChangePassword(System::String ^ oldPassword, System::String ^ newPassword);
public virtual bool ChangePassword (string oldPassword, string newPassword);
abstract member ChangePassword : string * string -> bool
override this.ChangePassword : string * string -> bool
Public Overridable Function ChangePassword (oldPassword As String, newPassword As String) As Boolean
Parameter
- oldPassword
- String
Das aktuelle Kennwort für den Mitgliedschaftsbenutzer.
- newPassword
- String
Das neue Kennwort für den Mitgliedschaftsbenutzer.
Gibt zurück
true
, wenn die Aktualisierung erfolgreich war, andernfalls false
.
Ausnahmen
oldPassword
ist eine leere Zeichenfolge.
- oder -
newPassword
ist eine leere Zeichenfolge.
Diese Methode ist nicht verfügbar. Dies kann auftreten, wenn die Anwendung auf das .NET Framework 4 Clientprofil ausgerichtet ist. Um diese Ausnahme zu verhindern, überschreiben Sie die Methode, oder ändern Sie die Anwendung so, dass sie auf die Vollversion von .NET Framework abzielt.
Beispiele
Im folgenden Codebeispiel wird das Kennwort für den aktuellen angemeldeten Benutzer geändert.
Wichtig
Dieses Beispiel enthält ein Textfeld, das Benutzereingaben akzeptiert, die eine potenzielle Sicherheitsrisiken darstellen. Standardmäßig stellen ASP.NET-Webseiten sicher, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public void ChangePassword_OnClick(object sender, EventArgs args)
{
// Update the password.
MembershipUser u = Membership.GetUser(User.Identity.Name);
try
{
if (u.ChangePassword(OldPasswordTextbox.Text, PasswordTextbox.Text))
{
Msg.Text = "Password changed.";
}
else
{
Msg.Text = "Password change failed. Please re-enter your values and try again.";
}
}
catch (Exception e)
{
Msg.Text = "An exception occurred: " + Server.HtmlEncode(e.Message) + ". Please re-enter your values and try again.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Change Password</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Change Password for <%=User.Identity.Name%></h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" />
<table cellpadding="3" border="0">
<tr>
<td>Old Password:</td>
<td><asp:Textbox id="OldPasswordTextbox" runat="server" TextMode="Password" /></td>
<td><asp:RequiredFieldValidator id="OldPasswordRequiredValidator" runat="server"
ControlToValidate="OldPasswordTextbox" ForeColor="red"
Display="Static" ErrorMessage="Required" /></td>
</tr>
<tr>
<td>Password:</td>
<td><asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /></td>
<td><asp:RequiredFieldValidator id="PasswordRequiredValidator" runat="server"
ControlToValidate="PasswordTextbox" ForeColor="red"
Display="Static" ErrorMessage="Required" /></td>
</tr>
<tr>
<td>Confirm Password:</td>
<td><asp:Textbox id="PasswordConfirmTextbox" runat="server" TextMode="Password" /></td>
<td><asp:RequiredFieldValidator id="PasswordConfirmRequiredValidator" runat="server"
ControlToValidate="PasswordConfirmTextbox" ForeColor="red"
Display="Static" ErrorMessage="Required" />
<asp:CompareValidator id="PasswordConfirmCompareValidator" runat="server"
ControlToValidate="PasswordConfirmTextbox" ForeColor="red"
Display="Static" ControlToCompare="PasswordTextBox"
ErrorMessage="Confirm password must match password." />
</td>
</tr>
<tr>
<td></td>
<td><asp:Button id="ChangePasswordButton" Text="Change Password"
OnClick="ChangePassword_OnClick" runat="server" /></td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<!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 ChangePassword_OnClick(sender As Object, args As EventArgs)
' Update the password.
Dim u As MembershipUser = Membership.GetUser(User.Identity.Name)
Try
If u.ChangePassword(OldPasswordTextbox.Text, PasswordTextbox.Text) Then
Msg.Text = "Password changed."
Else
Msg.Text = "Password change failed. Please re-enter your values and try again."
End If
Catch e As Exception
Msg.Text = "An exception occurred: " & Server.HtmlEncode(e.Message) & ". Please re-enter your values and try again."
End Try
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Change Password</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Change Password for <%=User.Identity.Name%></h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" />
<table cellpadding="3" border="0">
<tr>
<td>Old Password:</td>
<td><asp:Textbox id="OldPasswordTextbox" runat="server" TextMode="Password" /></td>
<td><asp:RequiredFieldValidator id="OldPasswordRequiredValidator" runat="server"
ControlToValidate="OldPasswordTextbox" ForeColor="red"
Display="Static" ErrorMessage="Required" /></td>
</tr>
<tr>
<td>Password:</td>
<td><asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /></td>
<td><asp:RequiredFieldValidator id="PasswordRequiredValidator" runat="server"
ControlToValidate="PasswordTextbox" ForeColor="red"
Display="Static" ErrorMessage="Required" /></td>
</tr>
<tr>
<td>Confirm Password:</td>
<td><asp:Textbox id="PasswordConfirmTextbox" runat="server" TextMode="Password" /></td>
<td><asp:RequiredFieldValidator id="PasswordConfirmRequiredValidator" runat="server"
ControlToValidate="PasswordConfirmTextbox" ForeColor="red"
Display="Static" ErrorMessage="Required" />
<asp:CompareValidator id="PasswordConfirmCompareValidator" runat="server"
ControlToValidate="PasswordConfirmTextbox" ForeColor="red"
Display="Static" ControlToCompare="PasswordTextBox"
ErrorMessage="Confirm password must match password." />
</td>
</tr>
<tr>
<td></td>
<td><asp:Button id="ChangePasswordButton" Text="Change Password"
OnClick="ChangePassword_OnClick" runat="server" /></td>
</tr>
</table>
</form>
</body>
</html>
Hinweise
ChangePassword ruft die Methode des Mitgliedschaftsanbieters auf, auf den die ChangePassword Eigenschaft verwiesen ProviderName wird, um das Kennwort für den Mitgliedschaftsbenutzer im Mitgliedschaftsdatenspeicher zu aktualisieren.
Der Mitgliedschaftsanbieter hat möglicherweise Einschränkungen für die Größe des Kennworts. Informationen zu Größenbeschränkungen finden Sie in der Dokumentation für den Mitgliedschaftsanbieter.