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

FormsAuthentication (Clase)

Administra los servicios de autenticación de formularios para las aplicaciones Web. Esta clase no puede heredarse.

System.Object
  System.Web.Security.FormsAuthentication

Espacio de nombres:  System.Web.Security
Ensamblado:  System.Web (en System.Web.dll)
public sealed class FormsAuthentication

El tipo FormsAuthentication expone los siguientes miembros.

  Nombre Descripción
Método público FormsAuthentication Inicializa una nueva instancia de la clase FormsAuthentication.
Arriba
  Nombre Descripción
Propiedad pública Miembro estático CookieDomain Obtiene el valor del dominio de la cookie de autenticación de formularios.
Propiedad pública Miembro estático CookieMode Obtiene un valor que indica si la aplicación está configurada para autenticación mediante formularios sin cookies.
Propiedad pública Miembro estático CookiesSupported Obtiene un valor que indica si la aplicación está configurada para admitir la autenticación mediante formularios sin cookies.
Propiedad pública Miembro estático DefaultUrl Obtiene la dirección URL a la que se redirigirá la clase FormsAuthentication si no se especifica ninguna dirección URL de redireccionamiento.
Propiedad pública Miembro estático EnableCrossAppRedirects Obtiene un valor que indica si los usuarios autenticados se pueden redirigir a direcciones URL de otras aplicaciones Web.
Propiedad pública Miembro estático FormsCookieName Obtiene el nombre de la cookie utilizada para almacenar el vale de autenticación de formularios.
Propiedad pública Miembro estático FormsCookiePath Obtiene la ruta de acceso para la cookie de autenticación de formularios.
Propiedad pública Miembro estático IsEnabled
Propiedad pública Miembro estático LoginUrl Obtiene la dirección URL de la página de inicio de sesión a la que se redirigirá la clase FormsAuthentication.
Propiedad pública Miembro estático RequireSSL Obtiene un valor que indica si la cookie de autenticación de formularios requiere SSL para su devolución al servidor.
Propiedad pública Miembro estático SlidingExpiration Obtiene un valor que indica si está habilitado el plazo de expiración.
Propiedad pública Miembro estático TicketCompatibilityMode
Propiedad pública Miembro estático Timeout
Arriba
  Nombre Descripción
Método público Miembro estático Authenticate Valida un nombre de usuario y contraseña contra credenciales almacenadas en el archivo de configuración de una aplicación.
Método público Miembro estático Decrypt Crea un objeto FormsAuthenticationTicket basado en el vale de autenticación de formularios cifrado que se pasa al método.
Método público Miembro estático EnableFormsAuthentication
Método público Miembro estático Encrypt Crea una cadena que contiene un vale de autenticación de formularios cifrado apto para utilizarlo en una cookie HTTP.
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 Miembro estático GetAuthCookie(String, Boolean) Crea una cookie de autenticación para un nombre de usuario dado. Esto no establece la cookie como parte de la respuesta de salida, de modo que una aplicación pueda tener más control sobre cómo se emite la cookie.
Método público Miembro estático GetAuthCookie(String, Boolean, String) Crea una cookie de autenticación para un nombre de usuario dado. Esto no establece la cookie como parte de la respuesta saliente.
Método público GetHashCode Actúa como función hash para un tipo concreto. (Se hereda de Object).
Método público Miembro estático GetRedirectUrl Devuelve la URL redirigida de la solicitud original causante de la redirección a la página de inicio de sesión.
Método público GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método público Miembro estático HashPasswordForStoringInConfigFile Genera una contraseña con algoritmo hash apropiada para almacenar en un archivo de configuración basándose en la contraseña y el algoritmo hash especificados.
Método público Miembro estático Initialize Inicializa el objeto FormsAuthentication basándose en las opciones de configuración de la aplicación.
Método protegido MemberwiseClone Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Método público Miembro estático RedirectFromLoginPage(String, Boolean) Redirige al usuario autenticado hacia la dirección URL originalmente solicitada o a la dirección URL predeterminada.
Método público Miembro estático RedirectFromLoginPage(String, Boolean, String) Redirige a un usuario autenticado a la dirección URL originalmente solicitada o la dirección URL predeterminada utilizando la ruta de acceso de cookies especificada para la cookie de autenticación de formularios.
Método público Miembro estático RedirectToLoginPage() Redirige el explorador a la dirección URL de inicio de sesión.
Método público Miembro estático RedirectToLoginPage(String) Redirige el explorador a la dirección URL de inicio de sesión con la cadena de consulta especificada.
Método público Miembro estático RenewTicketIfOld Actualiza condicionalmente la fecha y hora de emisión y de expiración para FormsAuthenticationTicket.
Método público Miembro estático SetAuthCookie(String, Boolean) Crea un vale de autenticación para el nombre de usuario proporcionado y lo agrega a la colección de cookies de la respuesta o a la dirección URL si se usa la autenticación sin cookies.
Método público Miembro estático SetAuthCookie(String, Boolean, String) Crea un vale de autenticación para el nombre de usuario proporcionado y lo agrega a la colección de cookies de la respuesta, utilizando la ruta de cookies suministrada, o a la dirección URL si se usa la autenticación sin cookies.
Método público Miembro estático SignOut Quita el vale de autenticación de formularios del explorador.
Método público ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).
Arriba

La autenticación de formularios habilita la validación de usuario y contraseña para aplicaciones Web que no requieren la autenticación de Windows. Con la autenticación de formularios, la información sobre el usuario se almacena en un origen de datos externo, como una base de datos Membership, o en el archivo de configuración de una aplicación. Cuando se autentica un usuario, la autenticación de formularios mantiene un vale de autenticación en una cookie o en la dirección URL para que un usuario autenticado no necesite proporcionar las credenciales con cada solicitud.

La autenticación de formularios se habilita al establecer el atributo mode del elemento de configuración authentication en Forms. Puede requerir que todas las solicitudes a una aplicación contengan un vale de autenticación de usuario válido utilizando el elemento de configuración authorization para denegar la solicitud de cualquier usuario desconocido, como se muestra en el ejemplo siguiente.

<system.web>
  <authentication mode="Forms">
    <forms loginUrl="login.aspx" />
  </authentication>
  <authorization>
    <deny users="?" />
  </authorization>
</system.web>

En el ejemplo anterior, cualquier solicitud para una página ASP.NET que forma parte de la aplicación requiere que la autenticación de formularios proporcione un nombre de usuario válido. Si no existe ningún nombre de usuario, la solicitud se redirige a la propiedad LoginUrl configurada.

La clase FormsAuthentication proporciona el acceso a los métodos y propiedades que puede utilizar en una aplicación que autentica a los usuarios. El método RedirectToLoginPage redirige un explorador a la propiedad LoginUrl configurada para los usuarios que inician sesión en una aplicación. El método RedirectFromLoginPage vuelve a redirigir un usuario autenticado a la dirección URL protegida original que se solicitó o a la propiedad DefaultUrl. Hay también métodos que permiten administrar vales de autenticación de formularios si es necesario.

El ejemplo de código siguiente muestra el archivo Web.config de una aplicación ASP.NET que utiliza el proveedor de pertenencia de ASP.NET para la autenticación de formularios y exige que todos los usuarios se autentiquen.

<configuration>
  <connectionStrings>
    <add name="SqlServices" connectionString="Data Source=MySqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
  </connectionStrings>
  <system.web>
    <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
      <providers>
        <add name="SqlProvider"
          type="System.Web.Security.SqlMembershipProvider"
          connectionStringName="SqlServices"
          enablePasswordRetrieval="false"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          passwordFormat="Hashed"
          applicationName="/" />
      </providers>
    </membership>
  </system.web>
</configuration>

En el ejemplo de código siguiente se muestra la página de inicio de sesión de una aplicación ASP.NET que utiliza autenticación de formularios y pertenencia de ASP.NET.

Nota de seguridadNota 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">

public void Login_OnClick(object sender, EventArgs args)
{
   if (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text))
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked);
   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>Login</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Login</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  Username: <asp:Textbox id="UsernameTextbox" runat="server" /><br />
  Password: <asp:Textbox id="PasswordTextbox" runat="server" TextMode="Password" /><br />

  <asp:Button id="LoginButton" Text="Login" OnClick="Login_OnClick" runat="server" />
  <asp:CheckBox id="NotPublicCheckBox" runat="server" /> 
  Check here if this is <span style="text-decoration:underline">not</span> a public computer.

</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