Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
Previous Versions
.NET Framework 1.1
.NET Framework
Reference
System.Web.Security

  Switch on low bandwidth view
.NET Framework Class Library
FormsAuthenticationTicket Constructor

Initializes a new instance of the FormsAuthenticationTicket class.

Overload List

Initializes a new instance of the FormsAuthenticationTicket class using a cookie name and expiration information.

[Visual Basic] Public Sub New(String, Boolean, Integer)
[C#] public FormsAuthenticationTicket(string, bool, int);
[C++] public: FormsAuthenticationTicket(String*, bool, int);
[JScript] public function FormsAuthenticationTicket(String, Boolean, int);

Initializes a new instance of the FormsAuthenticationTicket class with cookie name, version, expiration date, issue date, persistence, and user-defined data.

[Visual Basic] Public Sub New(Integer, String, DateTime, DateTime, Boolean, String)
[C#] public FormsAuthenticationTicket(int, string, DateTime, DateTime, bool, string);
[C++] public: FormsAuthenticationTicket(int, String*, DateTime, DateTime, bool, String*);
[JScript] public function FormsAuthenticationTicket(int, String, DateTime, DateTime, Boolean, String);

Initializes a new instance of the FormsAuthenticationTicket class with cookie name, version, directory path, issue date, expiration date, persistence, and user-defined data.

[Visual Basic] Public Sub New(Integer, String, DateTime, DateTime, Boolean, String, String)
[C#] public FormsAuthenticationTicket(int, string, DateTime, DateTime, bool, string, string);
[C++] public: FormsAuthenticationTicket(int, String*, DateTime, DateTime, bool, String*, String*);
[JScript] public function FormsAuthenticationTicket(int, String, DateTime, DateTime, Boolean, String, String);

Example

[Visual Basic, C#] Note   This example shows how to use one of the overloaded versions of the FormsAuthenticationTicket constructor. For other examples that might be available, see the individual overload topics.
[Visual Basic] 
<%@ Page Language="VB" AutoEventWireup="true" %>
<script runat="server">

    Function Authenticated(email As String, password As String) As Boolean
    ' This method authenticates the user for the application.
    ' In this demonstration application it always returns
    ' true.

    Return True
    End Function

    Sub Login_Click(sender As Object, e As EventArgs)
    ' Create a custom FormsAuthenticationTicket containing
    ' application specific data for the user.

    Dim email As String         = UserEmail.Text
    Dim password As String      = UserPass.Text
    Dim isPersistent As Boolean = Persist.Checked

    if Authenticated(email,password) Then 

         Dim userData As String = "ApplicationSpecific data for this user."

       Dim ticket As New FormsAuthenticationTicket( _
        1, _
        email, _
        System.DateTime.Now, _
        System.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(email,isPersistent))
    End If
    End Sub

</script>
<html>
<head>
    <title>Forms Authentication Login</title>
</head>
<body>
    <form runat="server">
        <span style="BACKGROUND: #80ff80"> 
        <h3>Login Page</font>
        </h3>
        </span> 
        <table>
            <tbody>
                <tr>
                    <td>
                        e-mail:</td>
                    <td>
                        <asp:TextBox id="UserEmail" type="text" runat="server" /></td>
                    <td>
                        <asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ErrorMessage="*" Display="Static" ControlToValidate="UserEmail"></ASP:RequiredFieldValidator>
                    </td>
                    <td>
                        <asp:RegularExpressionValidator id="RegexValidator" runat="server" ErrorMessage="Invalid format for e-mail address." Display="Static" ControlToValidate="UserEmail" EnableClientScript="false" ValidationExpression="^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"></asp:RegularExpressionValidator>
                    </td>
                </tr>
                <tr>
                    <td>
                        Password:</td>
                    <td>
                        <asp:TextBox id="UserPass" TextMode="Password" runat="server" /></td>
                    <td>
                        <ASP:RequiredFieldValidator id="RequiredFieldValidator2" runat="server" ErrorMessage="*" Display="Static" ControlToValidate="UserPass"></ASP:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td>
                        Persistent Cookies:</td>
                    <td>
                        <asp:CheckBox id="Persist" runat="server" autopostback="true"></ASP:CheckBox>
                    </td>
                    <td>
                    </td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login" runat="server" onserverclick="Login_Click" />
        <p>
            <asp:Label id="Msg" runat="server" ></asp:Label>
        </p>
    </form>
</body>
</html>

[C#] 
<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">

    private bool Authenticated(string email, string password)
    {
    // This method authenticates the user for the application.
    // In this demonstration application it always returns
    // true.

    return true;
    }

    private void Login_Click(Object sender, EventArgs e)
    {
    // Create a custom FormsAuthenticationTicket containing
    // application specific data for the user.

    string email        = UserEmail.Text;
    string password     = UserPass.Text;
    bool   isPersistent = Persist.Checked;

    if (Authenticated(email,password)) {

         string userData = "ApplicationSpecific data for this user.";

       FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
        1,
        email,
        System.DateTime.Now,
        System.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(email,isPersistent));
    }
    }

</script>
<html>
<head>
    <title>Forms Authentication Login</title>
</head>
<body>
    <form runat="server">
        <span style="BACKGROUND: #80ff80"> 
        <h3>Login Page</font>
        </h3>
        </span> 
        <table>
            <tbody>
                <tr>
                    <td>
                        e-mail:</td>
                    <td>
                        <asp:TextBox id="UserEmail" type="text" runat="server" /></td>
                    <td>
                        <asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ErrorMessage="*" Display="Static" ControlToValidate="UserEmail"></ASP:RequiredFieldValidator>
                    </td>
                    <td>
                        <asp:RegularExpressionValidator id="RegexValidator" runat="server" ErrorMessage="Invalid format for e-mail address." Display="Static" ControlToValidate="UserEmail" EnableClientScript="false" ValidationExpression="^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"></asp:RegularExpressionValidator>
                    </td>
                </tr>
                <tr>
                    <td>
                        Password:</td>
                    <td>
                        <asp:TextBox id="UserPass" TextMode="Password" runat="server" /></td>
                    <td>
                        <ASP:RequiredFieldValidator id="RequiredFieldValidator2" runat="server" ErrorMessage="*" Display="Static" ControlToValidate="UserPass"></ASP:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td>
                        Persistent Cookies:</td>
                    <td>
                        <asp:CheckBox id="Persist" runat="server" autopostback="true"></ASP:CheckBox>
                    </td>
                    <td>
                    </td>
                </tr>
            </tbody>
        </table>
        <input type="submit" value="Login" runat="server" onserverclick="Login_Click" />
    </form>
</body>
</html>

[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button Language Filter in the upper-left corner of the page.

See Also

FormsAuthenticationTicket Class | FormsAuthenticationTicket Members | System.Web.Security Namespace

© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker