Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original.
Traducción
Original
Este tema aún no ha recibido ninguna valoración - Valorar este tema

FormsAuthenticationTicket (Clase)

Proporciona acceso a las propiedades y valores del vale utilizados con la autenticación de formularios para identificar a los usuarios. Esta clase no puede heredarse.

System.Object
  System.Web.Security.FormsAuthenticationTicket

Espacio de nombres:  System.Web.Security
Ensamblado:  System.Web (en System.Web.dll)
[SerializableAttribute]
public sealed class FormsAuthenticationTicket

El tipo FormsAuthenticationTicket expone los siguientes miembros.

  Nombre Descripción
Método público FormsAuthenticationTicket(String, Boolean, Int32) Inicializa una nueva instancia de la clase FormsAuthenticationTicket con un nombre de cookie y la información de expiración.
Método público FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String) Inicializa una nueva instancia de la clase FormsAuthenticationTicket con nombre de cookie, versión, fecha de expiración, fecha de emisión, persistencia y datos específicos del usuario. La ruta de cookies se establece en el valor predeterminado establecido en el archivo de configuración de la aplicación.
Método público FormsAuthenticationTicket(Int32, String, DateTime, DateTime, Boolean, String, String) Inicializa una nueva instancia de la clase FormsAuthenticationTicket con nombre de cookie, versión, ruta de acceso del directorio, fecha de expiración, fecha de emisión, persistencia y datos definidos por el usuario.
Arriba
  Nombre Descripción
Propiedad pública CookiePath Obtiene la ruta de acceso de cookies para el vale de autenticación de formularios.
Propiedad pública Expiration Obtiene la fecha y hora local en las que expira el vale de autenticación de formularios.
Propiedad pública Expired Obtiene un valor que indica si el vale de autenticación de formularios ha expirado.
Propiedad pública IsPersistent Obtiene un valor que indica si la cookie que contiene la información del vale de autenticación de formularios es persistente.
Propiedad pública IssueDate Obtiene la fecha y hora local en las se emitió originalmente el vale de autenticación de formularios.
Propiedad pública Name Obtiene el nombre de usuario asociado al vale de autenticación de formularios.
Propiedad pública UserData Obtiene una cadena específica del usuario almacenada con el vale.
Propiedad pública Version Obtiene el número de versión del vale.
Arriba
  Nombre Descripción
Método público Equals(Object) Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Método protegido Finalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método público GetHashCode Actúa como función hash para un tipo concreto. (Se hereda de Object).
Método público GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método protegido MemberwiseClone Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Método público ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).
Arriba

La clase FormsAuthenticationTicket se utiliza para crear un objeto que representa el vale de autenticación que utiliza la autenticación de formularios para identificar un usuario autenticado. Las propiedades y valores de un vale de autenticación de formularios se convierten a y desde una cadena cifrada almacenada en una cookie o en la dirección URL.

La clase FormsAuthentication proporciona un método Encrypt para crear un valor de cadena que se puede almacenar en una cookie o en la dirección URL del objeto FormsAuthenticationTicket. La clase FormsAuthentication también proporciona un método Decrypt para crear un objeto FormsAuthenticationTicket a partir del vale de autenticación cifrado recuperado de la cookie de autenticación de formularios o de la dirección URL.

Se puede tener acceso al objeto FormsAuthenticationTicket para el usuario autenticado actual mediante la propiedad Ticket de la clase FormsIdentity. Puede tener acceso al objeto FormsIdentity actual convirtiendo la propiedad Identity de la propiedad User actual en tipo FormsIdentity.

El ejemplo de código siguiente almacena el resultado del método Encrypt en una cookie mediante la propiedad FormsCookieName y redirige al usuario a la dirección URL devuelta desde el método GetRedirectUrl.

Nota de seguridad Nota sobre la seguridad

En este ejemplo hay un cuadro de texto que acepta datos del usuario, lo que puede suponer una amenaza para la seguridad. De forma predeterminada, las páginas web ASP.NET validan los datos escritos por el usuario para comprobar que no incluyen script ni elementos HTML. Para obtener más información, vea Información general sobre los ataques mediante scripts.


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


.NET Framework

Compatible con: 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar