SqlMembershipProvider.ValidateUser(String, String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Verifica se o nome de usuário e a senha especificados existem no banco de dados de associação SQL Server.
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
Parâmetros
- username
- String
O nome do usuário a ser validado.
- password
- String
A senha do usuário especificado.
Retornos
true
se o nome de usuário e a senha especificados forem válidos. caso contrário, false
. Um valor de false
também será retornado se o usuário não existir no banco de dados.
Exemplos
O exemplo de código a seguir mostra a página de entrada de um aplicativo ASP.NET configurado para usar a autenticação de formulários e o SqlMembershipProvider. Se as credenciais de usuário fornecidas forem inválidas, uma mensagem será exibida para o usuário. Caso contrário, o usuário será redirecionado para a URL solicitada originalmente usando o RedirectFromLoginPage método .
Observação
Este exemplo usa a Membership classe para chamar o SqlMembershipProvider especificado como o defaultProvider
no arquivo Web.config. Se você precisar acessar o provedor padrão como o tipo SqlMembershipProvider, poderá converter a Provider propriedade da Membership classe . Para acessar outros provedores configurados como um tipo de provedor específico, você pode acessá-los pelo nome configurado com a Providers propriedade da Membership classe e convertê-los como o tipo de provedor específico.
<%@ 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>
Comentários
Esse método é chamado pela classe para validar informações do Membership usuário para um usuário no banco de dados do SQL Server especificado no arquivo de configuração do aplicativo ASP.NET (Web.config).
Quando um usuário é validado com êxito, os valores da data da última atividade e da última data de entrada são atualizados para a data e a hora atuais no banco de dados.
Se uma senha incorreta for fornecida ao ValidateUser método , o contador interno que rastreia tentativas de senha inválidas será incrementado por um. Isso pode fazer com que o usuário seja bloqueado e não consiga fazer logon até que o status do bloqueio seja limpo por uma chamada para o UnlockUser método . Se a senha correta for fornecida e o usuário não estiver bloqueado no momento, os contadores internos que rastreiam tentativas inválidas de senha e resposta de senha serão redefinidos para zero. Para obter mais informações, confira as propriedades MaxInvalidPasswordAttempts e PasswordAttemptWindow.
Espaços à esquerda e à direita são cortados de todos os valores de parâmetro.