FormsAuthenticationTicket Konstruktorer

Definition

Initierar en ny instans av FormsAuthenticationTicket klassen.

Överlagringar

Name Description
FormsAuthenticationTicket(String, Boolean, Int32)

Initierar en ny instans av klassen med hjälp av FormsAuthenticationTicket ett cookienamn och förfalloinformation.

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

Initierar en ny instans av FormsAuthenticationTicket klassen med cookienamn, version, utgångsdatum, utfärdandedatum, beständighet och användarspecifika data. Cookiesökvägen är inställd på det standardvärde som anges i programmets konfigurationsfil.

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

Initierar en ny instans av FormsAuthenticationTicket klassen med cookienamn, version, katalogsökväg, utfärdandedatum, förfallodatum, beständighet och användardefinierade data.

FormsAuthenticationTicket(String, Boolean, Int32)

Initierar en ny instans av klassen med hjälp av FormsAuthenticationTicket ett cookienamn och förfalloinformation.

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)

Parametrar

name
String

Användarnamnet som är associerat med biljetten.

isPersistent
Boolean

trueom biljetten kommer att lagras i en beständig cookie (sparas i webbläsarsessioner); annars . false Om biljetten lagras i URL:en ignoreras det här värdet.

timeout
Int32

Den tid, i minuter, för vilken autentiseringsbiljetten är giltig.

Kommentarer

Objektet FormsAuthenticationTicket som skapas av den här konstruktorn har ett CookiePath värde inställt på värdet FormsCookiePath för egenskapen, värdet Version 2, ett IssueDate värde för aktuellt lokalt datum och tid, ett UserData värde för en tom sträng (") och ett Expiration värde som är inställt på aktuellt lokalt datum och tid plus värdet för parametern timeout .

Se även

Gäller för

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

Initierar en ny instans av FormsAuthenticationTicket klassen med cookienamn, version, utgångsdatum, utfärdandedatum, beständighet och användarspecifika data. Cookiesökvägen är inställd på det standardvärde som anges i programmets konfigurationsfil.

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)

Parametrar

version
Int32

Versionsnumret för biljetten.

name
String

Användarnamnet som är associerat med biljetten.

issueDate
DateTime

Det lokala datum och den tid då biljetten utfärdades.

expiration
DateTime

Det lokala datum och den tid då biljetten upphör att gälla.

isPersistent
Boolean

trueom biljetten kommer att lagras i en beständig cookie (sparas i webbläsarsessioner); annars . false Om biljetten lagras i URL:en ignoreras det här värdet.

userData
String

De användarspecifika data som ska lagras med biljetten.

Kommentarer

Objektet FormsAuthenticationTicket som skapas av den här konstruktorn har ett CookiePath värde inställt på värdet för FormsCookiePath.

Note

Parametern userData får inte vara null.

Se även

Gäller för

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

Initierar en ny instans av FormsAuthenticationTicket klassen med cookienamn, version, katalogsökväg, utfärdandedatum, förfallodatum, beständighet och användardefinierade data.

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)

Parametrar

version
Int32

Versionsnumret för biljetten.

name
String

Användarnamnet som är associerat med biljetten.

issueDate
DateTime

Det lokala datum och den tid då biljetten utfärdades.

expiration
DateTime

Det lokala datum och den tid då biljetten upphör att gälla.

isPersistent
Boolean

trueom biljetten kommer att lagras i en beständig cookie (sparas i webbläsarsessioner); annars . false Om biljetten lagras i URL:en ignoreras det här värdet.

userData
String

De användarspecifika data som ska lagras med biljetten.

cookiePath
String

Sökvägen för biljetten när den lagras i en cookie.

Exempel

I följande kodexempel lagras resultatet av metoden i en cookie med hjälp av EncryptFormsCookieName egenskapen och användaren omdirigeras till den URL som returneras från GetRedirectUrl metoden.

Important

Det här exemplet innehåller en textruta som accepterar användarindata, vilket är ett potentiellt säkerhetshot. Som standard kontrollerar ASP.NET webbsidor att användarindata inte innehåller skript- eller HTML-element. Mer information finns i Översikt över skriptexploateringar.

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

Kommentarer

Note

Parametern userData får inte vara null.

Se även

Gäller för