FormsAuthenticationTicket.UserData Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene una cadena específica del usuario almacenada con el vale.
public:
property System::String ^ UserData { System::String ^ get(); };
public string UserData { get; }
member this.UserData : string
Public ReadOnly Property UserData As String
Valor de propiedad
Cadena específica del usuario almacenada con el vale. El valor predeterminado es una cadena vacía ("").
Ejemplos
En el ejemplo de código siguiente se muestran los valores de propiedad de FormsAuthenticationTicket para el usuario que ha iniciado sesión.
Nota
Si no hay ningún usuario que haya iniciado sesión, la Identity propiedad será null
y recibirá una excepción del compilador al intentar convertir la Identity propiedad como un FormsIdentity objeto.
<%@ 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>
<%@ Page Language="VB" 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">
Sub Page_Load(sender As Object, e As EventArgs)
Welcome.InnerHtml = "Hello, " + _
Server.HtmlEncode(User.Identity.Name)
Dim id As FormsIdentity = CType(User.Identity, FormsIdentity)
Dim ticket As FormsAuthenticationTicket = 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()
End Sub
Sub Signout_Click(sender As Object, e As EventArgs)
FormsAuthentication.SignOut()
Response.Write("Logged out - cookie deleted.")
End Sub
</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>
Comentarios
FormsAuthenticationTicket Si se crea mediante un constructor que no proporciona un userData
parámetro, la UserData propiedad devuelve una cadena vacía (""); de lo contrario, la propiedad version devuelve el valor proporcionado al FormsAuthenticationTicket constructor.
Puede usar la UserData propiedad para almacenar información de usuario adicional con la FormsAuthenticationTicket propiedad que no mantiene los valores de FormsAuthenticationTicket propiedad.
Nota
Debe limitar la cantidad de datos almacenados en la UserData propiedad . Debe asegurarse de que el tamaño de la UserData propiedad no da como resultado una cookie no válida o una dirección URL excesivamente larga.