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 yönteminin Encrypt sonucunu bir tanımlama bilgisinde FormsCookieName depolar ve kullanıcıyı yönteminden GetRedirectUrl döndürülen URL'ye 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 tanımlama Encrypt bilgisinde veya url'de bir öğesinden depolanabilen bir dize değeri oluşturmak için bir FormsAuthenticationTicketyöntem sağlar. FormsAuthentication sınıfı ayrıca forms-authentication tanımlama bilgisinden veya URL'den alınan şifrelenmiş kimlik doğrulama anahtarından bir nesne oluşturmak için bir FormsAuthenticationTicket yöntem sağlarDecrypt.
FormsAuthenticationTicket Geçerli kimliği doğrulanmış kullanıcının öğesine sınıfının özelliği FormsIdentity kullanılarak Ticket erişilebilir. geçerli FormsIdentity nesnesinin özelliğini tür FormsIdentityolarak yayınlayarak Identity geçerli User nesneye erişebilirsiniz.
Oluşturucular
FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String) |
Tanımlama bilgisi adı, sürümü, son kullanma tarihi, sorun tarihi, kalıcılık ve kullanıcıya özgü verilerle sınıfını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(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ın yeni bir örneğini FormsAuthenticationTicket başlatı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
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 dolduğunu belirten bir değer alır. |
IsPersistent |
Forms-authentication bilet bilgilerini içeren tanımlama bilgisinin kalıcı olup olmadığını belirten bir değer alır. |
IssueDate |
Form kimlik doğrulama biletinin ilk olarak verildiği yerel tarihi ve saati alır. |
Name |
Forms-authentication biletiyle ilişkili 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
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() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |