Compartir a través de


Información general sobre la autenticación de formularios de ASP.NET

Actualización: noviembre 2007

La autenticación de formularios le proporciona un modo de autenticar a los usuarios que utilizan su código y conserva un símbolo (token) de autenticación en una cookie o en la dirección URL de la página. La autenticación de formularios contribuye al ciclo de vida de la página ASP.NET mediante FormsAuthenticationModule. Puede tener acceso a información y funciones de autenticación de formularios mediante la clase FormsAuthentication.

Para utilizar la autenticación de formularios, crea una página de inicio de sesión que recoge las credenciales del usuario y eso incluye el código para autenticar las credenciales. Si las credenciales son válidas, puede llamar a métodos de la clase FormsAuthentication para redirigir la solicitud al recurso solicitado originalmente con un vale de autenticación adecuado (cookie). Si no quiere el redireccionamiento, puede obtener simplemente la cookie de autenticación de formularios o establecerla.

Configura la autenticación de formularios mediante el elemento de configuración de autenticación. En el caso más sencillo, puede especificar una dirección de URL para redireccionar las solicitudes no autenticadas a una página de inicio de sesión, proporcionar una implementación mínima de una página de inicio de sesión y ofrecer credenciales válidas, en un archivo Web.config o en un archivo por separado. El ejemplo siguiente muestra una sección de un archivo de configuración que especifica una página de inicio de sesión y credenciales de autenticación para el método Authenticate. Las contraseñas se han cifrado mediante el método HashPasswordForStoringInConfigFile.

<authentication mode="Forms">
   <forms name="SavingsPlan" loginUrl="/Logon.aspx">
      <credentials passwordFormat="SHA1">
         <user name="Kim"
               password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
         <user name="John"
               password="BA56E5E0366D003E98EA1C7F04ABF8FCB3753889"/>
      </credentials>
   </forms>
</authentication>

Después de una autenticación correcta, el módulo FormsAuthenticationModule rellena la propiedad User actual con información del usuario autenticado. El ejemplo de código siguiente muestra cómo leer mediante programación la identidad del usuario autenticado de formularios.

Dim authUser2 As String = User.Identity.Name
String authUser2 = User.Identity.Name;

Autenticación de formularios, suscripción de ASP.NET y controles de inicio de sesión

Una manera cómoda de trabajar con la autenticación de formularios es utilizar la suscripción de ASP.NET y sus controles de inicio de sesión. La suscripción de ASP.NET proporciona una manera para almacenar y administrar información de usuario e incluye métodos para autenticar a los usuarios. Los controles de inicio de sesión de ASP.NET funcionan con la suscripción de ASP.NET y encapsulan la lógica requerida para solicitar las credenciales a los usuarios, para validarlos y recuperar o reemplazar contraseñas, etc. Efectivamente, la suscripción de ASP.NET y los controles de inicio de sesión proporcionan una capa de abstracción de autenticación de formularios y reemplazan la mayor parte del trabajo que normalmente tendría que llevar a cabo para poder utilizar dicha autenticación de formularios. Para obtener más información, vea Administrar usuarios mediante suscripciones y Información general sobre controles de inicio de sesión de ASP.NET.

Vea también

Conceptos

Información general sobre la configuración de ASP.NET

Otros recursos

Seguridad de aplicaciones Web ASP.NET

Proveedor de autenticación mediante formularios