FormsAuthentication FormsAuthentication FormsAuthentication FormsAuthentication Class

Definición

Administra los servicios de autenticación de formularios para las aplicaciones Web.Manages forms-authentication services for Web applications. Esta clase no puede heredarse.This class cannot be inherited.

public ref class FormsAuthentication sealed
public sealed class FormsAuthentication
type FormsAuthentication = class
Public NotInheritable Class FormsAuthentication
Herencia
FormsAuthenticationFormsAuthenticationFormsAuthenticationFormsAuthentication

Ejemplos

El ejemplo de código siguiente muestra el archivo Web.config para una aplicación ASP.NET que usa el proveedor de pertenencia ASP.NET para la autenticación de formularios y requiere que todos los usuarios se autentiquen.The following code example shows the Web.config file for an ASP.NET application that uses the ASP.NET membership provider for forms authentication and requires all users to be authenticated.

<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 para una aplicación ASP.NET que usa la autenticación de formularios y la pertenencia a ASP.NET.The following code example shows the login page for an ASP.NET application that uses forms authentication and ASP.NET membership.

Importante

En este ejemplo contiene un cuadro de texto que acepta datos proporcionados por el usuario, que puede suponer una amenaza de seguridad.This example contains a text box that accepts user input, which is a potential security threat. De forma predeterminada, ASP.NET Web Pages valida que los datos proporcionados por el usuario no incluyen elementos HTML ni de script.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Para más información, consulte Información general sobre los ataques mediante scripts.For more information, see Script Exploits Overview.

<%@ 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>
<%@ Page Language="VB" %>
<%@ 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 Sub Login_OnClick(sender As Object, args As  EventArgs)

   If (Membership.ValidateUser(UsernameTextbox.Text, PasswordTextbox.Text)) Then
      FormsAuthentication.RedirectFromLoginPage(UsernameTextbox.Text, NotPublicCheckBox.Checked)
   Else
     Msg.Text = "Login failed. Please check your user name and password and try again."
   End If

End Sub

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

Comentarios

Autenticación de formularios permite validar la contraseña para las aplicaciones Web que no requieren autenticación de Windows y usuario.Forms authentication enables user and password validation for Web applications that do not require Windows authentication. Con la autenticación de formularios, información de usuario se almacena en un origen de datos externo, como un Membership base de datos, o en el archivo de configuración para una aplicación.With forms authentication, user information is stored in an external data source, such as a Membership database, or in the configuration file for an application. Una vez que un usuario se autentica, 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 necesita proporcionar credenciales con cada solicitud.Once a user is authenticated, forms authentication maintains an authentication ticket in a cookie or in the URL so that an authenticated user does not need to supply credentials with each request.

Autenticación de formularios se habilita estableciendo el mode atributo de la autenticación elemento de configuración a Forms.Forms authentication is enabled by setting the mode attribute of the authentication configuration element to Forms. Puede requerir que todas las solicitudes a una aplicación contienen un vale de autenticación de usuario válido utilizando la autorización elemento de configuración para denegar la solicitud de cualquier usuario desconocido, tal como se muestra en el ejemplo siguiente.You can require that all requests to an application contain a valid user authentication ticket by using the authorization configuration element to deny the request of any unknown user, as shown in the following example.

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

En el ejemplo anterior, cualquier solicitud de una página ASP.NET que forma parte de la aplicación requiere un nombre de usuario válido que se proporciona mediante la autenticación de formularios.In the previous example, any request for an ASP.NET page that is part of the application requires a valid user name that is supplied by forms authentication. Si no existe ningún nombre de usuario, entonces la solicitud se redirige a la configurada LoginUrl.If no user name exists, then the request is redirected to the configured LoginUrl.

La FormsAuthentication clase proporciona acceso a los métodos y propiedades que puede usar en una aplicación que autentica a los usuarios.The FormsAuthentication class provides access to methods and properties that you can use in an application that authenticates users. El RedirectToLoginPage método redirige un explorador a la configurada LoginUrl para los usuarios inicien sesión en una aplicación.The RedirectToLoginPage method redirects a browser to the configured LoginUrl for users to log into an application. El RedirectFromLoginPage método redirige al usuario autenticado a la dirección URL protegida original que se solicitó o a la DefaultUrl.The RedirectFromLoginPage method redirects an authenticated user back to the original protected URL that was requested or to the DefaultUrl. También hay métodos que permiten administrar vales de autenticación de formularios, si es necesario.There are also methods that enable you to manage forms-authentication tickets, if needed.

Constructores

FormsAuthentication() FormsAuthentication() FormsAuthentication() FormsAuthentication()

Inicializa una nueva instancia de la clase FormsAuthentication.Initializes a new instance of the FormsAuthentication class.

Propiedades

CookieDomain CookieDomain CookieDomain CookieDomain

Obtiene el valor del dominio de la cookie de autenticación de formularios.Gets the value of the domain of the forms-authentication cookie.

CookieMode CookieMode CookieMode CookieMode

Obtiene un valor que indica si la aplicación está configurada para autenticación mediante formularios sin cookies.Gets a value that indicates whether the application is configured for cookieless forms authentication.

CookieSameSite CookieSameSite CookieSameSite CookieSameSite

Obtiene o establece el valor del atributo SameSite de la cookie.Gets or sets the value for the SameSite attribute of the cookie.

CookiesSupported CookiesSupported CookiesSupported CookiesSupported

Obtiene un valor que indica si la aplicación está configurada para admitir la autenticación mediante formularios sin cookies.Gets a value that indicates whether the application is configured to support cookieless forms authentication.

DefaultUrl DefaultUrl DefaultUrl DefaultUrl

Obtiene la dirección URL a la que se redirigirá la clase FormsAuthentication si no se especifica ninguna dirección URL de redireccionamiento.Gets the URL that the FormsAuthentication class will redirect to if no redirect URL is specified.

EnableCrossAppRedirects EnableCrossAppRedirects EnableCrossAppRedirects EnableCrossAppRedirects

Obtiene un valor que indica si los usuarios autenticados se pueden redirigir a direcciones URL de otras aplicaciones Web.Gets a value indicating whether authenticated users can be redirected to URLs in other Web applications.

FormsCookieName FormsCookieName FormsCookieName FormsCookieName

Obtiene el nombre de la cookie utilizada para almacenar el vale de autenticación de formularios.Gets the name of the cookie used to store the forms-authentication ticket.

FormsCookiePath FormsCookiePath FormsCookiePath FormsCookiePath

Obtiene la ruta de acceso para la cookie de autenticación de formularios.Gets the path for the forms-authentication cookie.

IsEnabled IsEnabled IsEnabled IsEnabled

Obtiene un valor que indica si el la autenticación de formularios está habilitada.Gets a value that indicates whether forms authentication is enabled.

LoginUrl LoginUrl LoginUrl LoginUrl

Obtiene la dirección URL de la página de inicio de sesión a la que se redirigirá la clase FormsAuthentication.Gets the URL for the login page that the FormsAuthentication class will redirect to.

RequireSSL RequireSSL RequireSSL RequireSSL

Obtiene un valor que indica si la cookie de autenticación de formularios requiere SSL para su devolución al servidor.Gets a value indicating whether the forms-authentication cookie requires SSL in order to be returned to the server.

SlidingExpiration SlidingExpiration SlidingExpiration SlidingExpiration

Obtiene un valor que indica si está habilitado el plazo de expiración.Gets a value indicating whether sliding expiration is enabled.

TicketCompatibilityMode TicketCompatibilityMode TicketCompatibilityMode TicketCompatibilityMode

Obtiene un valor que indica si se va a usar la Hora universal coordinada (UTC) o la hora local para la fecha de expiración del vale.Gets a value that indicates whether to use Coordinated Universal Time (UTC) or local time for the ticket expiration date.

Timeout Timeout Timeout Timeout

Obtiene la cantidad de tiempo antes de que expire un vale de autenticación.Gets the amount of time before an authentication ticket expires.

Métodos

Authenticate(String, String) Authenticate(String, String) Authenticate(String, String) Authenticate(String, String)

Valida un nombre de usuario y contraseña contra credenciales almacenadas en el archivo de configuración de una aplicación.Validates a user name and password against credentials stored in the configuration file for an application.

Decrypt(String) Decrypt(String) Decrypt(String) Decrypt(String)

Crea un objeto FormsAuthenticationTicket basado en el vale de autenticación de formularios cifrado que se pasa al método.Creates a FormsAuthenticationTicket object based on the encrypted forms-authentication ticket passed to the method.

EnableFormsAuthentication(NameValueCollection) EnableFormsAuthentication(NameValueCollection) EnableFormsAuthentication(NameValueCollection) EnableFormsAuthentication(NameValueCollection)

Habilita la autenticación de formularios.Enables forms authentication.

Encrypt(FormsAuthenticationTicket) Encrypt(FormsAuthenticationTicket) Encrypt(FormsAuthenticationTicket) Encrypt(FormsAuthenticationTicket)

Crea una cadena que contiene un vale de autenticación de formularios cifrado apto para utilizarlo en una cookie HTTP.Creates a string containing an encrypted forms-authentication ticket suitable for use in an HTTP cookie.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetAuthCookie(String, Boolean) GetAuthCookie(String, Boolean) GetAuthCookie(String, Boolean) GetAuthCookie(String, Boolean)

Crea una cookie de autenticación para un nombre de usuario dado.Creates an authentication cookie for a given user name. 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.This does not set the cookie as part of the outgoing response, so that an application can have more control over how the cookie is issued.

GetAuthCookie(String, Boolean, String) GetAuthCookie(String, Boolean, String) GetAuthCookie(String, Boolean, String) GetAuthCookie(String, Boolean, String)

Crea una cookie de autenticación para un nombre de usuario dado.Creates an authentication cookie for a given user name. Esto no establece la cookie como parte de la respuesta saliente.This does not set the cookie as part of the outgoing response.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Inherited from Object)
GetRedirectUrl(String, Boolean) GetRedirectUrl(String, Boolean) GetRedirectUrl(String, Boolean) GetRedirectUrl(String, Boolean)

Devuelve la URL redirigida de la solicitud original causante de la redirección a la página de inicio de sesión.Returns the redirect URL for the original request that caused the redirect to the login page.

GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
HashPasswordForStoringInConfigFile(String, String) HashPasswordForStoringInConfigFile(String, String) HashPasswordForStoringInConfigFile(String, String) HashPasswordForStoringInConfigFile(String, String)

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.Produces a hash password suitable for storing in a configuration file based on the specified password and hash algorithm.

Initialize() Initialize() Initialize() Initialize()

Inicializa el objeto FormsAuthentication basándose en las opciones de configuración de la aplicación.Initializes the FormsAuthentication object based on the configuration settings for the application.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
RedirectFromLoginPage(String, Boolean) RedirectFromLoginPage(String, Boolean) RedirectFromLoginPage(String, Boolean) RedirectFromLoginPage(String, Boolean)

Redirige al usuario autenticado hacia la dirección URL originalmente solicitada o a la dirección URL predeterminada.Redirects an authenticated user back to the originally requested URL or the default URL.

RedirectFromLoginPage(String, Boolean, String) RedirectFromLoginPage(String, Boolean, String) RedirectFromLoginPage(String, Boolean, String) 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.Redirects an authenticated user back to the originally requested URL or the default URL using the specified cookie path for the forms-authentication cookie.

RedirectToLoginPage() RedirectToLoginPage() RedirectToLoginPage() RedirectToLoginPage()

Redirige el explorador a la dirección URL de inicio de sesión.Redirects the browser to the login URL.

RedirectToLoginPage(String) RedirectToLoginPage(String) RedirectToLoginPage(String) RedirectToLoginPage(String)

Redirige el explorador a la dirección URL de inicio de sesión con la cadena de consulta especificada.Redirects the browser to the login URL with the specified query string.

RenewTicketIfOld(FormsAuthenticationTicket) RenewTicketIfOld(FormsAuthenticationTicket) RenewTicketIfOld(FormsAuthenticationTicket) RenewTicketIfOld(FormsAuthenticationTicket)

Actualiza condicionalmente la fecha y hora de emisión y de expiración para FormsAuthenticationTicket.Conditionally updates the issue date and time and expiration date and time for a FormsAuthenticationTicket.

SetAuthCookie(String, Boolean) SetAuthCookie(String, Boolean) SetAuthCookie(String, Boolean) 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.Creates an authentication ticket for the supplied user name and adds it to the cookies collection of the response, or to the URL if you are using cookieless authentication.

SetAuthCookie(String, Boolean, String) SetAuthCookie(String, Boolean, String) SetAuthCookie(String, Boolean, String) 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.Creates an authentication ticket for the supplied user name and adds it to the cookies collection of the response, using the supplied cookie path, or using the URL if you are using cookieless authentication.

SignOut() SignOut() SignOut() SignOut()

Quita el vale de autenticación de formularios del explorador.Removes the forms-authentication ticket from the browser.

ToString() ToString() ToString() ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Seguridad

AspNetHostingPermission
Para usar el FormsAuthentication clase en un entorno hospedado.To use the FormsAuthentication class in a hosted environment. Valor de petición: LinkDemand.Demand value: LinkDemand. Valor de permiso: Minimal.Permission value: Minimal.

Se aplica a

Consulte también: