SqlMembershipProvider.ValidateUser(String, String) Metoda
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í.
Ověří, že v databázi členství SQL Serveru existuje zadané uživatelské jméno a heslo.
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
Parametry
- username
- String
Jméno uživatele, který se má ověřit.
- password
- String
Heslo pro zadaného uživatele.
Návraty
true
pokud je zadané uživatelské jméno a heslo platné; v opačném případě . false
Pokud uživatel v databázi neexistuje, vrátí se také hodnota .false
Příklady
Následující příklad kódu ukazuje přihlašovací stránku pro aplikaci ASP.NET nakonfigurovanou tak, aby používala ověřování pomocí formulářů a SqlMembershipProvider. Pokud jsou zadané přihlašovací údaje uživatele neplatné, zobrazí se uživateli zpráva. V opačném případě se uživatel přesměruje na původně požadovanou adresu URL pomocí RedirectFromLoginPage metody .
Poznámka
Tento příklad používá Membership třídu k volání SqlMembershipProvider zadané jako defaultProvider
v souboru Web.config. Pokud potřebujete získat přístup k výchozímu poskytovateli jako typ SqlMembershipProvider, můžete přetypovat Provider vlastnost Membership třídy. Chcete-li získat přístup k jiným nakonfigurovaným poskytovatelům jako konkrétnímu typu zprostředkovatele, můžete k nim přistupovat pomocí jejich nakonfigurovaného názvu s Providers vlastností Membership třídy a přetypovat je jako konkrétní typ zprostředkovatele.
<%@ 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>
Poznámky
Tato metoda je volána Membership třídou k ověření informací o uživateli v databázi SQL Serveru zadané v konfiguračním souboru aplikace ASP.NET (Web.config).
Po úspěšném ověření uživatele se datum poslední aktivity a datum posledního přihlášení aktualizují na aktuální datum a čas v databázi.
Pokud je metodě zadáno ValidateUser nesprávné heslo, interní čítač, který sleduje neplatné pokusy o heslo, se zvýší o jeden. To může mít za následek uzamčení uživatele a nebude se moct přihlásit, dokud se stav zámku nevymaže voláním UnlockUser metody. Pokud zadáte správné heslo a uživatel není momentálně uzamčený, pak se interní čítače, které sledují neplatné heslo a pokusy o odpověď na heslo, resetují na nulu. Pokud chcete získat další informace, podívejte se na vlastnosti MaxInvalidPasswordAttempts a PasswordAttemptWindow.
Počáteční a koncové mezery jsou oříznuté ze všech hodnot parametrů.