FormsAuthentication Sınıf
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.
Web uygulamaları için form kimlik doğrulama hizmetlerini yönetir. Bu sınıf devralınamaz.
public ref class FormsAuthentication sealed
public sealed class FormsAuthentication
type FormsAuthentication = class
Public NotInheritable Class FormsAuthentication
- Devralma
-
FormsAuthentication
Örnekler
Aşağıdaki kod örneği, form kimlik doğrulaması için ASP.NET üyelik sağlayıcısını kullanan ve tüm kullanıcıların kimliğinin doğrulanması gereken ASP.NET bir uygulamanın Web.config dosyasını gösterir.
<configuration>
<connectionStrings>
<add name="SqlServices" connectionString="Data Source=MySqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
</connectionStrings>
<system.web>
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
passwordFormat="Hashed"
applicationName="/" />
</providers>
</membership>
</system.web>
</configuration>
Aşağıdaki kod örneği, form kimlik doğrulaması ve ASP.NET üyeliği kullanan bir ASP.NET uygulamasının oturum açma sayfasını gösterir.
Önemli
Bu örnek, olası bir güvenlik tehdidi olan kullanıcı girişini kabul eden bir metin kutusu içerir. Varsayılan olarak, ASP.NET Web sayfaları kullanıcı girişinin betik veya HTML öğeleri içermediğini doğrular. Daha fazla bilgi için bkz . Betik Açıklarına Genel Bakış.
<%@ 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
Forms kimlik doğrulaması, Windows kimlik doğrulaması gerektirmeyen Web uygulamaları için kullanıcı ve parola doğrulaması sağlar. Form kimlik doğrulamasıyla, kullanıcı bilgileri veritabanı gibi bir dış veri kaynağında veya bir Membership uygulamanın yapılandırma dosyasında depolanır. Bir kullanıcının kimliği doğrulandıktan sonra Forms kimlik doğrulaması, kimliği doğrulanmış bir kullanıcının her istekte kimlik bilgileri sağlaması gerekmemesi için tanımlama bilgisinde veya URL'de bir kimlik doğrulama bileti tutar.
Forms kimlik doğrulaması, kimlik doğrulama yapılandırma öğesinin özniteliği olarak Forms
ayarlanarak mode
etkinleştirilir. Aşağıdaki örnekte gösterildiği gibi, bilinmeyen herhangi bir kullanıcının isteğini reddetmek için yetkilendirme yapılandırma öğesini kullanarak bir uygulamaya yönelik tüm isteklerin geçerli bir kullanıcı kimlik doğrulama bileti içermesini isteyebilirsiniz.
<system.web>
<authentication mode="Forms">
<forms loginUrl="login.aspx" />
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
Önceki örnekte, uygulamanın parçası olan bir ASP.NET sayfasına yönelik tüm istekler, form kimlik doğrulaması tarafından sağlanan geçerli bir kullanıcı adı gerektirir. Kullanıcı adı yoksa, istek yapılandırılan LoginUrlöğesine yönlendirilir.
FormsAuthentication sınıfı, kullanıcıların kimliğini doğrulayan bir uygulamada kullanabileceğiniz yöntemlere ve özelliklere erişim sağlar. RedirectToLoginPage yöntemi, bir tarayıcıyı kullanıcıların uygulamada oturum açması için yapılandırılan LoginUrl öğesine yönlendirir. RedirectFromLoginPage yöntemi, kimliği doğrulanmış bir kullanıcıyı istenen özgün korumalı URL'ye veya öğesine DefaultUrlyeniden yönlendirir. Gerekirse form kimlik doğrulama biletlerini yönetmenizi sağlayan yöntemler de vardır.
Oluşturucular
FormsAuthentication() |
FormsAuthentication sınıfının yeni bir örneğini başlatır. |
Özellikler
CookieDomain |
Forms-authentication tanımlama bilgisinin etki alanının değerini alır. |
CookieMode |
Uygulamanın tanımlama bilgisi olmayan form kimlik doğrulaması için yapılandırılıp yapılandırılmadığını gösteren bir değer alır. |
CookieSameSite |
Tanımlama bilgisinin SameSite özniteliğinin değerini alır veya ayarlar. |
CookiesSupported |
Uygulamanın tanımlama bilgisi olmayan form kimlik doğrulamasını destekleyecek şekilde yapılandırılıp yapılandırılmadığını gösteren bir değer alır. |
DefaultUrl |
Hiçbir yeniden yönlendirme URL'si belirtilmezse sınıfın FormsAuthentication yeniden yönlendireceği URL'yi alır. |
EnableCrossAppRedirects |
Kimliği doğrulanmış kullanıcıların diğer Web uygulamalarındaki URL'lere yeniden yönlendirilip yönlendirilemeyeceğini belirten bir değer alır. |
FormsCookieName |
Forms-authentication biletini depolamak için kullanılan tanımlama bilgisinin adını alır. |
FormsCookiePath |
Forms-authentication tanımlama bilgisinin yolunu alır. |
IsEnabled |
Form kimlik doğrulamasının etkinleştirilip etkinleştirilmediğini gösteren bir değer alır. |
LoginUrl |
Sınıfın yeniden yönlendireceği oturum açma sayfasının URL'sini FormsAuthentication alır. |
RequireSSL |
Forms-authentication tanımlama bilgisinin sunucuya döndürülmesi için SSL gerektirip gerektirmediğini belirten bir değer alır. |
SlidingExpiration |
Kayan süre sonunun etkinleştirilip etkinleştirilmediğini belirten bir değer alır. |
TicketCompatibilityMode |
Biletin son kullanma tarihi için Eşgüdümlü Evrensel Saat (UTC) mi yoksa yerel saat mi kullanılacağını belirten bir değer alır. |
Timeout |
Kimlik doğrulama biletinin süresi dolmadan önce geçmesi gereken süreyi alır. |
Yöntemler
Authenticate(String, String) |
Geçersiz.
Bir uygulamanın yapılandırma dosyasında depolanan kimlik bilgilerine karşı kullanıcı adını ve parolayı doğrular. |
Decrypt(String) |
yöntemine geçirilen şifrelenmiş forms-authentication anahtarını temel alan bir FormsAuthenticationTicket nesne oluşturur. |
EnableFormsAuthentication(NameValueCollection) |
Form kimlik doğrulamasını etkinleştirir. |
Encrypt(FormsAuthenticationTicket) |
HTTP tanımlama bilgisinde kullanıma uygun şifrelenmiş form kimlik doğrulama bileti içeren bir dize oluşturur. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetAuthCookie(String, Boolean) |
Belirli bir kullanıcı adı için kimlik doğrulama tanımlama bilgisi oluşturur. Bu, tanımlama bilgisini giden yanıtın bir parçası olarak ayarlamaz, böylece bir uygulama tanımlama bilgisinin nasıl verildiği üzerinde daha fazla denetim sahibi olabilir. |
GetAuthCookie(String, Boolean, String) |
Belirli bir kullanıcı adı için kimlik doğrulama tanımlama bilgisi oluşturur. Bu, tanımlama bilgisini giden yanıtın bir parçası olarak ayarlamaz. |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetRedirectUrl(String, Boolean) |
Oturum açma sayfasına yeniden yönlendirmeye neden olan özgün isteğin yeniden yönlendirme URL'sini döndürür. |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
HashPasswordForStoringInConfigFile(String, String) |
Geçersiz.
Belirtilen parolayı ve karma algoritmayı temel alan bir yapılandırma dosyasında depolamak için uygun bir karma parola üretir. |
Initialize() |
FormsAuthentication Uygulamayı yapılandırma ayarlarına göre nesnesini başlatır. |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
RedirectFromLoginPage(String, Boolean) |
Kimliği doğrulanmış bir kullanıcıyı özgün istenen URL'ye veya varsayılan URL'ye yeniden yönlendirir. |
RedirectFromLoginPage(String, Boolean, String) |
Kimliği doğrulanmış bir kullanıcıyı, form kimlik doğrulaması tanımlama bilgisi için belirtilen tanımlama bilgisi yolunu kullanarak özgün istenen URL'ye veya varsayılan URL'ye yeniden yönlendirir. |
RedirectToLoginPage() |
Tarayıcıyı oturum açma URL'sine yönlendirir. |
RedirectToLoginPage(String) |
Tarayıcıyı belirtilen sorgu dizesiyle oturum açma URL'sine yönlendirir. |
RenewTicketIfOld(FormsAuthenticationTicket) |
Bir FormsAuthenticationTicketiçin sorun tarihi ve saati ile sona erme tarihi ve saatini koşullu olarak güncelleştirir. |
SetAuthCookie(String, Boolean) |
Sağlanan kullanıcı adı için bir kimlik doğrulama bileti oluşturur ve yanıtın tanımlama bilgileri koleksiyonuna veya tanımlama bilgisi olmayan kimlik doğrulaması kullanıyorsanız URL'ye ekler. |
SetAuthCookie(String, Boolean, String) |
Sağlanan kullanıcı adı için bir kimlik doğrulama bileti oluşturur ve sağlanan tanımlama bilgisi yolunu kullanarak veya tanımlama bilgisi olmayan kimlik doğrulaması kullanıyorsanız URL'yi kullanarak yanıtın tanımlama bilgileri koleksiyonuna ekler. |
SignOut() |
Forms-authentication biletini tarayıcıdan kaldırır. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |