FormsAuthenticationTicket Oluşturucular

Tanım

FormsAuthenticationTicket sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

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.

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.

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)

Parametreler

name
String

Biletle ilişkilendirilmiş kullanıcı adı.

isPersistent
Boolean

true bilet kalıcı bir tanımlama bilgisinde depolanacaksa (tarayıcı oturumlarında kaydedilir); aksi takdirde , false. Anahtar URL'de depolanıyorsa, bu değer yoksayılır.

timeout
Int32

Kimlik doğrulama biletinin geçerli olduğu dakika cinsinden süre.

Açıklamalar

Bu FormsAuthenticationTicket oluşturucu tarafından oluşturulan nesne, özelliğin FormsCookiePath değerine ayarlanmış bir Version CookiePath değere, 2 değerine, IssueDate geçerli yerel tarih ve saatin değerine, UserData boş dizenin ("") değerine ve geçerli yerel tarih ve saat ile parametrenin değerine ayarlanmış bir Expiration değere timeout sahip olur.

Ayrıca bkz.

Şunlara uygulanır

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.

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)

Parametreler

version
Int32

Biletin sürüm numarası.

name
String

Biletle ilişkilendirilmiş kullanıcı adı.

issueDate
DateTime

Biletin verildiği yerel tarih ve saat.

expiration
DateTime

Biletin süresinin dolduğu yerel tarih ve saat.

isPersistent
Boolean

true bilet kalıcı bir tanımlama bilgisinde depolanacaksa (tarayıcı oturumlarında kaydedilir); aksi takdirde , false. Anahtar URL'de depolanıyorsa, bu değer yoksayılır.

userData
String

Anahtarla birlikte depolanacak kullanıcıya özgü veriler.

Açıklamalar

FormsAuthenticationTicket Bu oluşturucu tarafından oluşturulan nesnenin değerine ayarlanmış bir CookiePath değeri FormsCookiePatholacaktır.

Not

userData parametresi olamaznull.

Ayrıca bkz.

Şunlara uygulanı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.

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)

Parametreler

version
Int32

Biletin sürüm numarası.

name
String

Biletle ilişkilendirilmiş kullanıcı adı.

issueDate
DateTime

Biletin verildiği yerel tarih ve saat.

expiration
DateTime

Biletin süresinin dolduğu yerel tarih ve saat.

isPersistent
Boolean

true bilet kalıcı bir tanımlama bilgisinde depolanacaksa (tarayıcı oturumlarında kaydedilir); aksi takdirde , false. Anahtar URL'de depolanıyorsa, bu değer yoksayılır.

userData
String

Anahtarla birlikte depolanacak kullanıcıya özgü veriler.

cookiePath
String

Bir tanımlama bilgisinde depolandığında biletin yolu.

Örnekler

Aşağıdaki kod örneği, özelliğini kullanarak FormsCookieName yönteminin Encrypt sonucunu bir tanımlama bilgisinde 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

Not

userData parametresi olamaznull.

Ayrıca bkz.

Şunlara uygulanır