SqlMembershipProvider.ValidateUser(String, String) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen kullanıcı adı ve parolanın SQL Server üyelik veritabanında mevcut olduğunu doğrular.
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
Parametreler
- username
- String
Doğrulanması gereken kullanıcının adı.
- password
- String
Belirtilen kullanıcının parolası.
Döndürülenler
true
belirtilen kullanıcı adı ve parola geçerliyse; aksi takdirde , false
.
false
Kullanıcı veritabanında yoksa değeri de döndürülür.
Örnekler
Aşağıdaki kod örneği, forms kimlik doğrulamasını ve kullanmak üzere yapılandırılmış bir ASP.NET uygulamasının SqlMembershipProvideroturum açma sayfasını gösterir. Sağlanan kullanıcı kimlik bilgileri geçersizse, kullanıcıya bir ileti görüntülenir. Aksi takdirde, kullanıcı yöntemi kullanılarak başlangıçta istenen URL'ye RedirectFromLoginPage yönlendirilir.
Not
Bu örnek, Membership Web.config dosyasında belirtilen öğesini defaultProvider
çağırmak SqlMembershipProvider için sınıfını kullanır. türü SqlMembershipProviderolarak varsayılan sağlayıcıya erişmeniz gerekiyorsa sınıfının özelliğini Membership yayınlayabilirsinizProvider. Belirli bir sağlayıcı türü olarak yapılandırılan diğer sağlayıcılara erişmek için, bu sağlayıcılara sınıfının özelliğiyle Membership yapılandırılmış adlarıyla Providers erişebilir ve bunları belirli sağlayıcı türü olarak yayınlayabilirsiniz.
<%@ 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>
Açıklamalar
Bu yöntem, ASP.NET uygulamasının Membership yapılandırma dosyasında (Web.config) belirtilen SQL Server veritabanındaki bir kullanıcının kullanıcı bilgilerini doğrulamak için sınıfı tarafından çağrılır.
Kullanıcı başarıyla doğrulandığında, son etkinlik tarihi ve son oturum açma tarihi değerleri veritabanındaki geçerli tarih ve saate güncelleştirilir.
Yöntemine ValidateUser yanlış parola sağlanırsa, geçersiz parola girişimlerini izleyen iç sayaç bir artırılır. Bu, kullanıcının kilitlenmesine ve yöntem çağrısı tarafından kilit durumu temizleninceye kadar oturum açamamasına UnlockUser neden olabilir. Doğru parola sağlandıysa ve kullanıcı şu anda kilitli değilse, geçersiz parolayı ve parola yanıtı girişimlerini izleyen iç sayaçlar sıfıra sıfırlanır. Daha fazla bilgi için MaxInvalidPasswordAttempts ve PasswordAttemptWindow özelliklerine bakın.
Baştaki ve sondaki boşluklar tüm parametre değerlerinden kırpılır.