FormsAuthenticationTicket 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.
Kullanıcıları tanımlamak için form kimlik doğrulaması ile kullanılan biletin özelliklerine ve değerlerine erişim sağlar. Bu sınıf devralınamaz.
public ref class FormsAuthenticationTicket sealed
[System.Serializable]
public sealed class FormsAuthenticationTicket
[<System.Serializable>]
type FormsAuthenticationTicket = class
Public NotInheritable Class FormsAuthenticationTicket
- Devralma
-
FormsAuthenticationTicket
- Öznitelikler
Örnekler
Aşağıdaki kod örneği kullanarak FormsCookieName yönteminin Encrypt sonucunu bir tanımlama bilgisinde depolar ve kullanıcıyı yöntemden döndürülen URL'ye GetRedirectUrl yönlendirir.
Ö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">
private void Login_Click(Object sender, EventArgs e)
{
// Create a custom FormsAuthenticationTicket containing
// application specific data for the user.
string username = UserNameTextBox.Text;
string password = UserPassTextBox.Text;
bool isPersistent = false;
if (Membership.ValidateUser(username, password))
{
string userData = "ApplicationSpecific data for this user.";
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
username,
DateTime.Now,
DateTime.Now.AddMinutes(30),
isPersistent,
userData,
FormsAuthentication.FormsCookiePath);
// Encrypt the ticket.
string encTicket = FormsAuthentication.Encrypt(ticket);
// Create the cookie.
Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket));
// Redirect back to original URL.
Response.Redirect(FormsAuthentication.GetRedirectUrl(username, isPersistent));
}
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>Forms Authentication Login</title>
</head>
<body>
<form id="form1" runat="server">
<span style="BACKGROUND: #80ff80; font-weight:bold">
Login Page
</span>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
<table border="0">
<tbody>
<tr>
<td>Username:</td>
<td><asp:TextBox id="UserNameTextBox" runat="server" /></td>
<td>
<asp:RequiredFieldValidator id="RequiredFieldValidator1"
runat="server" ErrorMessage="*"
Display="Static"
ControlToValidate="UserNameTextBox" />
</td>
</tr>
<tr>
<td>Password:</td>
<td><asp:TextBox id="UserPassTextBox" TextMode="Password" runat="server" /></td>
<td>
<asp:RequiredFieldValidator id="RequiredFieldValidator2"
runat="server" ErrorMessage="*"
Display="Static"
ControlToValidate="UserPassTextBox" />
</td>
</tr>
</tbody>
</table>
<input type="submit" value="Login" runat="server" onserverclick="Login_Click" />
</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">
Private Sub Login_Click(sender As Object, e As EventArgs)
' Create a custom FormsAuthenticationTicket containing
' application specific data for the user.
Dim username As String = UserNameTextBox.Text
Dim password As String = UserPassTextBox.Text
Dim isPersistent As Boolean = False
If Membership.ValidateUser(username, password) Then
Dim userData As String = "ApplicationSpecific data for this user."
Dim ticket As FormsAuthenticationTicket = New FormsAuthenticationTicket(1, _
username, _
DateTime.Now, _
DateTime.Now.AddMinutes(30), _
isPersistent, _
userData, _
FormsAuthentication.FormsCookiePath)
' Encrypt the ticket.
Dim encTicket As String = FormsAuthentication.Encrypt(ticket)
' Create the cookie.
Response.Cookies.Add(New HttpCookie(FormsAuthentication.FormsCookieName, encTicket))
' Redirect back to original URL.
Response.Redirect(FormsAuthentication.GetRedirectUrl(username, isPersistent))
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>Forms Authentication Login</title>
</head>
<body>
<form id="form1" runat="server">
<span style="BACKGROUND:#80ff80; font-weight:bold">
Login Page
</span>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
<table border="0">
<tbody>
<tr>
<td>Username:</td>
<td><asp:TextBox id="UserNameTextBox" runat="server" /></td>
<td>
<asp:RequiredFieldValidator id="RequiredFieldValidator1"
runat="server" ErrorMessage="*"
Display="Static"
ControlToValidate="UserNameTextBox" />
</td>
</tr>
<tr>
<td>Password:</td>
<td><asp:TextBox id="UserPassTextBox" TextMode="Password" runat="server" /></td>
<td>
<asp:RequiredFieldValidator id="RequiredFieldValidator2"
runat="server" ErrorMessage="*"
Display="Static"
ControlToValidate="UserPassTextBox" />
</td>
</tr>
</tbody>
</table>
<input type="submit" value="Login" runat="server" onserverclick="Login_Click" />
</form>
</body>
</html>
Açıklamalar
FormsAuthenticationTicket sınıfı, kimliği doğrulanmış bir kullanıcıyı tanımlamak için form kimlik doğrulaması tarafından kullanılan kimlik doğrulama anahtarını temsil eden bir nesne oluşturmak için kullanılır. Form kimlik doğrulama anahtarının özellikleri ve değerleri, tanımlama bilgisinde veya URL'de depolanan şifrelenmiş bir dizeye dönüştürülür.
sınıfı, FormsAuthentication bir Encrypt tanımlama bilgisinde veya bir url'den depolanabilen bir dize değeri oluşturmak için bir FormsAuthenticationTicketyöntem sağlar. FormsAuthentication sınıfı, forms-authentication tanımlama bilgisinden veya URL'den alınan şifrelenmiş kimlik doğrulama anahtarından nesne oluşturmak için bir FormsAuthenticationTicket yöntem de sağlarDecrypt.
FormsAuthenticationTicket Geçerli kimliği doğrulanmış kullanıcının öğesine sınıfın TicketFormsIdentity özelliği kullanılarak erişilebilir. geçerli FormsIdentity nesnesinin özelliğini tür FormsIdentityolarak dönüştürerek Identity geçerli User nesneye erişebilirsiniz.
Oluşturucular
| Name | Description |
|---|---|
| FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String) |
Tanımlama bilgisi adı, sürüm, dizin yolu, sorun tarihi, son kullanma tarihi, kalıcılık ve kullanıcı tanımlı verilerle sınıfın yeni bir örneğini FormsAuthenticationTicket başlatır. |
| FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String) |
Tanımlama bilgisi adı, sürümü, son kullanma tarihi, çıkış tarihi, kalıcılık ve kullanıcıya özgü verilerle sınıfın yeni bir örneğini FormsAuthenticationTicket başlatır. Tanımlama bilgisi yolu, uygulamanın yapılandırma dosyasında oluşturulan varsayılan değere ayarlanır. |
| FormsAuthenticationTicket(String, Boolean, Int32) |
Tanımlama bilgisi adı ve süre sonu bilgilerini kullanarak sınıfın FormsAuthenticationTicket yeni bir örneğini başlatır. |
Özellikler
| Name | Description |
|---|---|
| CookiePath |
Forms-authentication bileti için tanımlama bilgisi yolunu alır. |
| Expiration |
Forms-authentication biletinin süresinin dolmasına neden olan yerel tarihi ve saati alır. |
| Expired |
Forms-authentication biletinin süresinin dolup dolmadığını belirten bir değer alır. |
| IsPersistent |
Forms-authentication anahtar bilgilerini içeren tanımlama bilgisinin kalıcı olup olmadığını belirten bir değer alır. |
| IssueDate |
Forms-authentication biletinin ilk olarak verildiği yerel tarih ve saati alır. |
| Name |
Forms-authentication biletiyle ilişkilendirilmiş kullanıcı adını alır. |
| UserData |
Anahtarla birlikte depolanan kullanıcıya özgü bir dize alır. |
| Version |
Biletin sürüm numarasını alır. |
Yöntemler
| Name | Description |
|---|---|
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |