Freigeben über


SqlMembershipProvider.ValidateUser(String, String) Methode

Definition

Überprüft, ob der angegebene Benutzername und das angegebene Kennwort in der Mitgliedschaftsdatenbank von SQL Server vorhanden sind.

public:
 override bool ValidateUser(System::String ^ username, System::String ^ password);
public override bool ValidateUser (string username, string password);
override this.ValidateUser : string * string -> bool
Public Overrides Function ValidateUser (username As String, password As String) As Boolean

Parameter

username
String

Der Name des zu überprüfenden Benutzers.

password
String

Das Kennwort für den angegebenen Benutzer.

Gibt zurück

true, wenn der angegebene Benutzername und das Kennwort gültig sind, andernfalls false. Der Wert false wird auch zurückgegeben, wenn der Benutzer in der Datenbank nicht vorhanden ist.

Beispiele

Das folgende Codebeispiel zeigt die Anmeldeseite für eine ASP.NET Anwendung, die für die Verwendung der Formularauthentifizierung und der SqlMembershipProviderkonfiguriert ist. Wenn die angegebenen Benutzeranmeldeinformationen ungültig sind, wird dem Benutzer eine Meldung angezeigt. Andernfalls wird der Benutzer mithilfe RedirectFromLoginPage der -Methode zur ursprünglich angeforderten URL umgeleitet.

Hinweis

In diesem Beispiel wird die Membership -Klasse verwendet, um die SqlMembershipProvider angegebene als in defaultProvider der Web.config-Datei aufzurufen. Wenn Sie auf den Standardanbieter als Typ SqlMembershipProviderzugreifen müssen, können Sie die Provider -Eigenschaft der Membership -Klasse umwandeln. Um auf andere konfigurierte Anbieter als bestimmten Anbietertyp zuzugreifen, können Sie über ihren konfigurierten Namen mit der Providers -Eigenschaft der Membership -Klasse auf sie zugreifen und sie in den spezifischen Anbietertyp umwandeln.

<%@ 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 Login_OnClick(object sender, EventArgs args)
{
   if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
   else
     Msg.Text = "Login failed. Please check your user name and password and try again.";
}


</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
 
  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</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 Login_OnClick(sender As Object, args As  EventArgs)

   If (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text)) Then
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked)
   Else
     Msg.Text = "Login failed. Please check your user name and password and try again."
   End If

End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />
 
  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</form>

</body>
</html>

Hinweise

Diese Methode wird von der Membership -Klasse aufgerufen, um Benutzerinformationen für einen Benutzer in der SQL Server-Datenbank zu überprüfen, die in der Konfigurationsdatei der ASP.NET Anwendung (Web.config) angegeben ist.

Wenn ein Benutzer erfolgreich überprüft wurde, werden die Werte für das Datum der letzten Aktivität und das Datum der letzten Anmeldung auf das aktuelle Datum und die aktuelle Uhrzeit in der Datenbank aktualisiert.

Wenn ein falsches Kennwort für die ValidateUser -Methode angegeben wird, wird der interne Zähler, der ungültige Kennwortversuche nachverfolgt, um eins erhöht. Dies kann dazu führen, dass der Benutzer gesperrt wird und sich nicht anmelden kann, bis der Sperrstatus durch einen Aufruf der UnlockUser -Methode gelöscht wird. Wenn das richtige Kennwort angegeben wird und der Benutzer derzeit nicht gesperrt ist, werden die internen Leistungsindikatoren, die ungültige Kennwort- und Kennwortantwortversuche nachverfolgen, auf Null zurückgesetzt. Weitere Informationen finden Sie in den Ausführungen zur MaxInvalidPasswordAttempts-Eigenschaft und zur PasswordAttemptWindow-Eigenschaft.

Führende und nachfolgende Leerzeichen werden auf alle Parameterwerte gekürzt.

Gilt für:

Weitere Informationen