UserData Property
Collapse the table of content
Expand the table of content

FormsAuthenticationTicket.UserData Property

 

Gets a user-specific string stored with the ticket.

Namespace:   System.Web.Security
Assembly:  System.Web (in System.Web.dll)

public string UserData { get; }

Property Value

Type: System.String

A user-specific string stored with the ticket. The default is an empty string ("").

If the FormsAuthenticationTicket is created using a constructor that does not supply a userData parameter, the UserData property returns an empty string (""); otherwise, the version property returns the value supplied to the FormsAuthenticationTicket constructor.

You can use the UserData property to store additional user information with the FormsAuthenticationTicket that is not maintained by the FormsAuthenticationTicket property values.

System_CAPS_noteNote

You should limit the amount of data stored in the UserData property. You must ensure that the size of the UserData property does not result in an invalid cookie or an excessively long URL.

The following code example displays the property values of the FormsAuthenticationTicket for the current logged-on user.

System_CAPS_noteNote

If there is no logged-on user, the Identity property will be null and you will receive a compiler exception when attempting to cast the Identity property as a FormsIdentity object.

<%@ Page Language="C#" AutoEventWireup="true"%>
<!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 Page_Load(Object Src, EventArgs e)
    {
        Welcome.InnerHtml = "Hello, " +
            Server.HtmlEncode(User.Identity.Name);

       FormsIdentity id = (FormsIdentity)User.Identity;
       FormsAuthenticationTicket ticket = id.Ticket;

       cookiePath.Text = ticket.CookiePath;
       expireDate.Text = ticket.Expiration.ToString();
       expired.Text = ticket.Expired.ToString();
       isPersistent.Text = ticket.IsPersistent.ToString();
       issueDate.Text = ticket.IssueDate.ToString();
       name.Text = ticket.Name;
       userData.Text = ticket.UserData;
       version.Text = ticket.Version.ToString();


    }
    private void Signout_Click(Object sender, EventArgs e)
    {
        FormsAuthentication.SignOut();
        Response.Write("Logged out - cookie deleted.");
    }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Forms Authentication</title>
</head>
<body>
    <h3>Forms Authentication Example</h3>
    <span id="Welcome" runat="server"> </span>
    <form id="form1" runat="server">
        <input type="submit" value="Signout" runat="server" onserverclick="Signout_Click" />
        <h3>Forms Authentication Ticket Properties</h3> 
            <table>
                <tbody>
                    <tr>
                        <td>
                            CookiePath: 
                        </td>
                        <td><asp:Label id="cookiePath" runat="server" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Expiration: 
                        </td>
                        <td><asp:Label id="expireDate" runat="server" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Expired: 
                        </td>
                        <td><asp:Label id="expired" runat="server" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            IsPersistent: 
                        </td>
                        <td><asp:Label id="isPersistent" runat="server" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            IssueDate: 
                        </td>
                        <td><asp:Label id="issueDate" runat="server" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Name: 
                        </td>
                        <td><asp:Label id="name" runat="server" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            UserData: 
                        </td>
                        <td><asp:Label id="userData" runat="server" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Version: 
                        </td>
                        <td><asp:Label id="version" runat="server" />
                        </td>
                    </tr>
                </tbody>
            </table>
            <p>
            </p>
    </form>
</body>
</html>

.NET Framework
Available since 1.1
Return to top
Show:
© 2016 Microsoft