Bagikan melalui


FormsAuthenticationTicket Konstruktor

Definisi

Menginisialisasi instans baru kelas FormsAuthenticationTicket.

Overload

FormsAuthenticationTicket(String, Boolean, Int32)

Menginisialisasi instans baru kelas menggunakan nama cookie dan informasi kedaluwarsa FormsAuthenticationTicket .

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String)

Menginisialisasi instans FormsAuthenticationTicket baru kelas dengan nama cookie, versi, tanggal kedaluwarsa, tanggal penerbitan, persistensi, dan data khusus pengguna. Jalur cookie diatur ke nilai default yang ditetapkan dalam file konfigurasi aplikasi.

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String)

Menginisialisasi instans FormsAuthenticationTicket baru kelas dengan nama cookie, versi, jalur direktori, tanggal penerbitan, tanggal kedaluwarsa, persistensi, dan data yang ditentukan pengguna.

FormsAuthenticationTicket(String, Boolean, Int32)

Menginisialisasi instans baru kelas menggunakan nama cookie dan informasi kedaluwarsa FormsAuthenticationTicket .

public:
 FormsAuthenticationTicket(System::String ^ name, bool isPersistent, int timeout);
public FormsAuthenticationTicket (string name, bool isPersistent, int timeout);
new System.Web.Security.FormsAuthenticationTicket : string * bool * int -> System.Web.Security.FormsAuthenticationTicket
Public Sub New (name As String, isPersistent As Boolean, timeout As Integer)

Parameter

name
String

Nama pengguna yang terkait dengan tiket.

isPersistent
Boolean

true jika tiket akan disimpan dalam cookie persisten (disimpan di seluruh sesi browser); jika tidak, false. Jika tiket disimpan di URL, nilai ini akan diabaikan.

timeout
Int32

Waktu, dalam menit, yang tiket autentikasinya valid.

Keterangan

Objek FormsAuthenticationTicket yang dibuat oleh konstruktor ini akan memiliki nilai yang CookiePath diatur ke nilai FormsCookiePath properti, Version nilai 2, IssueDate nilai tanggal dan waktu lokal saat ini, UserData nilai string kosong (""), dan Expiration nilai yang diatur ke tanggal dan waktu lokal saat ini ditambah nilai timeout parameter.

Lihat juga

Berlaku untuk

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String)

Menginisialisasi instans FormsAuthenticationTicket baru kelas dengan nama cookie, versi, tanggal kedaluwarsa, tanggal penerbitan, persistensi, dan data khusus pengguna. Jalur cookie diatur ke nilai default yang ditetapkan dalam file konfigurasi aplikasi.

public:
 FormsAuthenticationTicket(int version, System::String ^ name, DateTime issueDate, DateTime expiration, bool isPersistent, System::String ^ userData);
public FormsAuthenticationTicket (int version, string name, DateTime issueDate, DateTime expiration, bool isPersistent, string userData);
new System.Web.Security.FormsAuthenticationTicket : int * string * DateTime * DateTime * bool * string -> System.Web.Security.FormsAuthenticationTicket
Public Sub New (version As Integer, name As String, issueDate As DateTime, expiration As DateTime, isPersistent As Boolean, userData As String)

Parameter

version
Int32

Nomor versi tiket.

name
String

Nama pengguna yang terkait dengan tiket.

issueDate
DateTime

Tanggal dan waktu lokal tempat tiket diterbitkan.

expiration
DateTime

Tanggal dan waktu lokal tempat tiket kedaluwarsa.

isPersistent
Boolean

true jika tiket akan disimpan dalam cookie persisten (disimpan di seluruh sesi browser); jika tidak, false. Jika tiket disimpan di URL, nilai ini akan diabaikan.

userData
String

Data khusus pengguna yang akan disimpan dengan tiket.

Keterangan

Objek FormsAuthenticationTicket yang dibuat oleh konstruktor ini akan memiliki nilai yang CookiePath diatur ke nilai FormsCookiePath.

Catatan

Parameter userData tidak boleh null.

Lihat juga

Berlaku untuk

FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String)

Menginisialisasi instans FormsAuthenticationTicket baru kelas dengan nama cookie, versi, jalur direktori, tanggal penerbitan, tanggal kedaluwarsa, persistensi, dan data yang ditentukan pengguna.

public:
 FormsAuthenticationTicket(int version, System::String ^ name, DateTime issueDate, DateTime expiration, bool isPersistent, System::String ^ userData, System::String ^ cookiePath);
public FormsAuthenticationTicket (int version, string name, DateTime issueDate, DateTime expiration, bool isPersistent, string userData, string cookiePath);
new System.Web.Security.FormsAuthenticationTicket : int * string * DateTime * DateTime * bool * string * string -> System.Web.Security.FormsAuthenticationTicket
Public Sub New (version As Integer, name As String, issueDate As DateTime, expiration As DateTime, isPersistent As Boolean, userData As String, cookiePath As String)

Parameter

version
Int32

Nomor versi tiket.

name
String

Nama pengguna yang terkait dengan tiket.

issueDate
DateTime

Tanggal dan waktu lokal tempat tiket diterbitkan.

expiration
DateTime

Tanggal dan waktu lokal tempat tiket kedaluwarsa.

isPersistent
Boolean

true jika tiket akan disimpan dalam cookie persisten (disimpan di seluruh sesi browser); jika tidak, false. Jika tiket disimpan di URL, nilai ini akan diabaikan.

userData
String

Data khusus pengguna yang akan disimpan dengan tiket.

cookiePath
String

Jalur untuk tiket ketika disimpan dalam cookie.

Contoh

Contoh kode berikut menyimpan hasil Encrypt metode dalam cookie menggunakan FormsCookieName properti dan mengalihkan pengguna ke URL yang dikembalikan dari GetRedirectUrl metode .

Penting

Contoh ini berisi kotak teks yang menerima input pengguna, yang merupakan potensi ancaman keamanan. Secara default, ASP.NET halaman Web memvalidasi bahwa input pengguna tidak menyertakan elemen skrip atau HTML. Untuk informasi selengkapnya, lihat Gambaran Umum Eksploitasi Skrip.

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

Keterangan

Catatan

Parameter userData tidak boleh null.

Lihat juga

Berlaku untuk