SqlMembershipProvider.ValidateUser(String, String) Метод

Определение

Проверяет существование указанных имени пользователя и пароля в базе данных членства 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

Параметры

username
String

Имя пользователя для проверки.

password
String

Пароль заданного пользователя.

Возвращаемое значение

Boolean

Значение true, если указанное имя пользователя и пароль являются допустимыми; в противном случае — значение false. Значение false также возвращается, если пользователь не существует в базе данных.

Примеры

В следующем примере кода показана страница входа для приложения ASP.NET, настроенного для использования проверки подлинности форм и .SqlMembershipProvider Если предоставленные учетные данные пользователя недопустимы, пользователю отображается сообщение. В противном случае пользователь перенаправляется на исходный запрошенный URL-адрес с помощью RedirectFromLoginPage метода.

Примечание

В этом примере класс используется Membership для вызова указанного SqlMembershipProvider defaultProvider в файле Web.config. Если вам нужно получить доступ к поставщику по умолчанию в качестве типа SqlMembershipProvider, можно привести Provider свойство Membership класса. Чтобы получить доступ к другим настроенным поставщикам в качестве определенного типа поставщика, вы можете получить к ним доступ по их имени с Providers помощью свойства класса и привести их в качестве конкретного Membership типа поставщика.

<%@ 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>

Комментарии

Этот метод вызывается классом Membership для проверки сведений о пользователе в базе данных SQL Server, указанной в файле конфигурации приложения ASP.NET (Web.config).

После успешной проверки пользователя значения даты последнего действия и даты последнего входа обновляются до текущей даты и времени в базе данных.

Если методу ValidateUser предоставлен неправильный пароль, внутренний счетчик, отслеживающий недопустимые попытки пароля, увеличивается на один. Это может привести к тому, что пользователь заблокирован и не может войти в систему, пока состояние блокировки не будет очищено вызовом UnlockUser метода. Если указан правильный пароль и пользователь в настоящее время не заблокирован, внутренние счетчики, которые отслеживают недопустимые попытки ввода пароля и ответа на пароль, сбрасываются до нуля. Дополнительные сведения см. в описаниях свойств MaxInvalidPasswordAttempts и PasswordAttemptWindow.

Начальные и конечные пробелы обрезаются из всех значений параметров.

Применяется к

См. также раздел