Freigeben über


FormsAuthenticationTicket Konstruktoren

Definition

Initialisiert eine neue Instanz der FormsAuthenticationTicket-Klasse.

Überlädt

Name Beschreibung
FormsAuthenticationTicket(String, Boolean, Int32)

Initialisiert eine neue Instanz der FormsAuthenticationTicket Klasse mithilfe eines Cookienamens und Ablaufinformationen.

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

Initialisiert eine neue Instanz der FormsAuthenticationTicket Klasse mit Cookiename, Version, Ablaufdatum, Ausgabedatum, Persistenz und benutzerspezifischen Daten. Der Cookiepfad wird auf den Standardwert festgelegt, der in der Konfigurationsdatei der Anwendung festgelegt ist.

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

Initialisiert eine neue Instanz der FormsAuthenticationTicket Klasse mit Cookiename, Version, Verzeichnispfad, Problemdatum, Ablaufdatum, Persistenz und benutzerdefinierten Daten.

FormsAuthenticationTicket(String, Boolean, Int32)

Initialisiert eine neue Instanz der FormsAuthenticationTicket Klasse mithilfe eines Cookienamens und Ablaufinformationen.

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

Der Benutzername, der dem Ticket zugeordnet ist.

isPersistent
Boolean

truewenn das Ticket in einem persistenten Cookie gespeichert wird (in Browsersitzungen gespeichert); andernfalls . false Wenn das Ticket in der URL gespeichert ist, wird dieser Wert ignoriert.

timeout
Int32

Die Zeit in Minuten, für die das Authentifizierungsticket gültig ist.

Hinweise

Das FormsAuthenticationTicket von diesem Konstruktor erstellte Objekt weist einen CookiePath Wert auf den Wert der FormsCookiePath Eigenschaft, einen Version Wert von 2, einen IssueDate Wert des aktuellen lokalen Datums und der aktuellen Uhrzeit, einen UserData Wert einer leeren Zeichenfolge ("") und einen Expiration Wert auf das aktuelle lokale Datum und die aktuelle Uhrzeit sowie den Wert des timeout Parameters auf.

Weitere Informationen

Gilt für:

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

Initialisiert eine neue Instanz der FormsAuthenticationTicket Klasse mit Cookiename, Version, Ablaufdatum, Ausgabedatum, Persistenz und benutzerspezifischen Daten. Der Cookiepfad wird auf den Standardwert festgelegt, der in der Konfigurationsdatei der Anwendung festgelegt ist.

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

Die Versionsnummer des Tickets.

name
String

Der Benutzername, der dem Ticket zugeordnet ist.

issueDate
DateTime

Das lokale Datum und die Uhrzeit, zu dem das Ticket ausgestellt wurde.

expiration
DateTime

Das lokale Datum und die Uhrzeit, zu dem das Ticket abläuft.

isPersistent
Boolean

truewenn das Ticket in einem persistenten Cookie gespeichert wird (in Browsersitzungen gespeichert); andernfalls . false Wenn das Ticket in der URL gespeichert ist, wird dieser Wert ignoriert.

userData
String

Die benutzerspezifischen Daten, die mit dem Ticket gespeichert werden sollen.

Hinweise

Das FormsAuthenticationTicket von diesem Konstruktor erstellte Objekt weist einen CookiePath Wert auf den Wert des FormsCookiePathKonstruktors auf.

Hinweis

Der userData Parameter darf nicht sein null.

Weitere Informationen

Gilt für:

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

Initialisiert eine neue Instanz der FormsAuthenticationTicket Klasse mit Cookiename, Version, Verzeichnispfad, Problemdatum, Ablaufdatum, Persistenz und benutzerdefinierten Daten.

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

Die Versionsnummer des Tickets.

name
String

Der Benutzername, der dem Ticket zugeordnet ist.

issueDate
DateTime

Das lokale Datum und die Uhrzeit, zu dem das Ticket ausgestellt wurde.

expiration
DateTime

Das lokale Datum und die Uhrzeit, zu dem das Ticket abläuft.

isPersistent
Boolean

truewenn das Ticket in einem persistenten Cookie gespeichert wird (in Browsersitzungen gespeichert); andernfalls . false Wenn das Ticket in der URL gespeichert ist, wird dieser Wert ignoriert.

userData
String

Die benutzerspezifischen Daten, die mit dem Ticket gespeichert werden sollen.

cookiePath
String

Der Pfad für das Ticket, wenn er in einem Cookie gespeichert wird.

Beispiele

Im folgenden Codebeispiel wird das Ergebnis der Methode in einem Cookie mithilfe FormsCookieName der Encrypt Eigenschaft gespeichert und der Benutzer an die von der GetRedirectUrl Methode zurückgegebene URL umgeleitet.

Von Bedeutung

Dieses Beispiel enthält ein Textfeld, das Benutzereingaben akzeptiert, bei denen es sich um eine potenzielle Sicherheitsrisiken handelt. Standardmäßig überprüfen ASP.NET Webseiten, dass die Benutzereingabe keine Skript- oder HTML-Elemente enthält. Weitere Informationen finden Sie unter Script Exploits Overview.

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

Hinweise

Hinweis

Der userData Parameter darf nicht sein null.

Weitere Informationen

Gilt für: