Elemento forms para authentication (Esquema de configuración de ASP.NET)
Configura una aplicación ASP.NET para la autenticación basada en formularios personalizados.
<forms
name="name"
loginUrl="URL"
defaultUrl="URL"
protection="[All|None|Encryption|Validation]"
timeout="[MM]"
path="path"
requireSSL="[true|false]"
slidingExpiration="[true|false]">
enableCrossAppRedirects="[true|false]"
cookieless="[UseUri|UseCookies|AutoDetect|UseDeviceProfile]"
domain="domain name"
ticketCompatibilityMode="[Framework20|Framework40]">
<credentials>...</credentials>
</forms>
Atributos y elementos
En las secciones siguientes se describen los atributos, los elementos secundarios y los elementos primarios.
Atributos
Atributo |
Descripción |
---|---|
cookieless |
Atributo opcional. Define si se utilizan cookies y su comportamiento. Este atributo puede tener uno de los siguientes valores.
Nota
En los sitios web ASP.NET habilitados para AJAX, utilice el valor predeterminado UseCookies para el atributo cookieless.Las bibliotecas de script de cliente AJAX de ASP.NET no admiten la configuración en la que se utilizan cookies codificadas en la dirección URL.
ValorDescripción
UseCookies Especifica que siempre se utilizarán cookies, independientemente del dispositivo.
UseUri Especifica que nunca se utilizarán cookies.
AutoDetect Especifica que se utilizan cookies si el perfil del dispositivo las admite; en caso contrario, no se utilizan cookies.En el caso de los exploradores de escritorio que admiten el uso de cookies, se utilizará un mecanismo de prueba para intentar utilizarlas cuando estén habilitadas.Si un dispositivo no admite cookies, no se utilizará este mecanismo de prueba.
UseDeviceProfile Especifica que se utilizan cookies si el explorador las admite; en caso contrario, no se utilizan cookies. En el caso de los dispositivos que admiten cookies, no se intenta determinar si está habilitado el uso de cookies.
Este atributo es nuevo en la versión 2.0 de .NET Framework. El valor predeterminado es UseDeviceProfile.. |
defaultUrl |
Atributo opcional. Define la dirección URL predeterminada que se utiliza para el redireccionamiento después de la autenticación. Este atributo es nuevo en la versión 2.0 de .NET Framework. El tipo predeterminado es "default.aspx". |
domain |
Atributo opcional. Especifica un dominio opcional que se va a establecer en las cookies de autenticación de los formularios salientes. Esta opción tiene prioridad sobre el dominio utilizado en el elemento httpCookies. Este atributo es nuevo en la versión 2.0 de .NET Framework. El valor predeterminado es una cadena vacía (""). |
enableCrossAppRedirects |
Atributo opcional. Indica si los usuarios autenticados se redirigen a direcciones URL en otras aplicaciones Web.
Nota
Al realizar redireccionamientos entre aplicaciones, se debe comprobar que varios de los atributos de Elemento forms para authentication (Esquema de configuración de ASP.NET) estén duplicados en las aplicaciones autenticadas.Para obtener más información y un ejemplo, vea Autenticación de formularios entre distintas aplicaciones.
Este atributo puede tener uno de los siguientes valores.
ValorDescripción
True Especifica que los usuarios autenticados pueden redirigirse a direcciones URL en otras aplicaciones Web.
False Especifica que los usuarios autenticados no pueden redirigirse a direcciones URL en otras aplicaciones Web.
Este atributo es nuevo en la versión 2.0 de .NET Framework. El tipo predeterminado es False. |
loginUrl |
Atributo opcional. Especifica la dirección URL a la que debe redirigirse la solicitud de inicio de sesión si no se encuentra ninguna cookie de autenticación válida. El tipo predeterminado es login.aspx. |
name |
Atributo opcional. Especifica la cookie HTTP utilizada para la autenticación. Si se ejecutan varias aplicaciones en un mismo servidor y cada una requiere una cookie única, se debe configurar el nombre de la cookie en cada archivo Web.config de cada aplicación. El tipo predeterminado es ".ASPXAUTH". |
path |
Atributo opcional. Especifica la ruta de acceso de las cookies emitidas por la aplicación. El valor predeterminado es una barra diagonal (/), ya que la mayor parte de los exploradores distinguen mayúsculas y minúsculas, y no devolverán cookies si hay una discrepancia de este tipo en la ruta de acceso. |
protection |
Atributo opcional. Si se ha utilizado algún tipo de cifrado, especifica el empleado para las cookies. Este atributo puede tener uno de los siguientes valores.
ValorDescripción
All Especifica que la aplicación utiliza validación de datos y cifrado para ayudar a proteger la cookie.Esta opción utiliza el algoritmo de validación de datos configurado, que se basa en el elementomachineKey.Para el cifrado se utiliza Triple-DES (3DES), si está disponible y si la longitud de la clave es suficiente (48 bytes o más).All es el valor predeterminado y recomendado.
Encryption Especifica que las cookies se cifran con 3DES o DES, pero que no se validan los datos en la cookie.Las cookies empleadas de esta manera pueden sufrir ataques en el texto sin formato.
None Especifica que tanto el cifrado como la validación están deshabilitados para aquellos sitios que utilizan cookies sólo para la personalización y tienen requisitos de seguridad menos estrictosSe recomienda no utilizar las cookies de esta manera; no obstante, es el método que menos recursos requiere para habilitar la personalización en .NET Framework.
Validation Especifica que un esquema de validación comprueba que el contenido de una cookie cifrada no ha sido alterado durante el trayecto.La cookie se crea con validación de cookies mediante la concatenación de una clave de validación y los datos de la cookie, el cálculo de un código de autenticación de mensajes (MAC) y la anexión de este código a la cookie saliente.
El tipo predeterminado es All. |
requireSSL |
Atributo opcional. Especifica si se requiere una conexión SSL para transmitir la cookie de autenticación. Este atributo puede tener uno de los siguientes valores.
ValorDescripción
True Especifica que se requiere una conexión SSL para ayudar a proteger las credenciales del usuario.Si su valor es True, ASP.NET establece la propiedad Secure de la cookie de autenticación y un explorador compatible no devuelve la cookie, a menos que la conexión utilice SSL.
False Especifica que no se requiere una conexión SSL para transmitir la cookie.El tipo predeterminado es False.
El tipo predeterminado es False. |
slidingExpiration |
Atributo opcional. Especifica si el plazo de expiración está habilitado. Este plazo restablece el tiempo del que dispone una cookie de autenticación activa hasta su expiración en cada solicitud realizada durante una sesión. Este atributo puede tener uno de los siguientes valores.
ValorDescripción
True Especifica que el plazo de expiración está habilitado.La cookie de autenticación se actualiza y el tiempo hasta la expiración se restablece para las solicitudes siguientes realizadas en la misma sesión.
False Especifica que el plazo de expiración no está habilitado y que la cookie expira en un intervalo de tiempo fijado, a partir del momento en que se emitió originalmente.
El valor predeterminado es True. |
ticketCompatibilityMode |
Atributo opcional. Especifica si se va a usar la Hora universal coordinada (UTC) o la hora local para la fecha de expiración del vale para la autenticación de formularios. Este atributo puede TENER uno de los siguientes valores.
ValorDescripción
Framework20 Especifica que la fecha de expiración del vale se almacena utilizando la hora local.
Framework40 Especifica que la fecha de expiración del vale se almacena utilizando la hora UTC.
El valor predeterminado es Framework20. |
timeout |
Atributo opcional. Especifica el intervalo de tiempo, en minutos enteros, transcurrido el cual la cookie expira. Si el valor del atributo SlidingExpiration es true, el atributo timeout es un valor variable, que expira cuando transcurre el número de minutos especificado, contados a partir de la recepción de la última solicitud. Para evitar problemas de rendimiento y evitar que aparezcan numerosas advertencias del explorador a los usuarios que tengan activadas las advertencias de cookies, la cookie se actualiza cuando ha transcurrido más de la mitad del tiempo especificado. Esto puede disminuir la precisión. El valor predeterminado es "30" (30 minutos).
Nota
En ASP.NET 1.1, las cookies persistentes no expiran, sea cual sea el valor del atributo de tiempo de espera.Sin embargo, a partir de ASP.NET 2.0, las cookies persistentes expiran según el valor del atributo de tiempo de espera.
|
Elementos secundarios
Subetiqueta |
Descripción |
---|---|
credentials |
Permite las definiciones opcionales de las credenciales de nombre y contraseña en el archivo de configuración. También puede implementar un esquema personalizado de contraseñas que use un origen externo, por ejemplo una base de datos, para controlar la validación. |
Elementos primarios
Elemento |
Descripción |
---|---|
configuration |
Especifica el elemento raíz necesario de cada archivo de configuración que utilizan las aplicaciones basadas en Common Language Runtime y .NET Framework. |
system.web |
Especifica el elemento raíz de los valores de configuración de ASP.NET en un archivo de configuración y contiene elementos de configuración que configuran aplicaciones Web ASP.NET y controlan el comportamiento de las aplicaciones. |
authentication |
Configura el esquema de autenticación de ASP.NET utilizado para identificar usuarios que ven una aplicación ASP.NET. |
Comentarios
El elemento forms configura una aplicación ASP.NET para una autenticación personalizada basada en formularios. Si se ejecutan varias aplicaciones en un único servidor, los atributos del elemento forms se deben configurar en el archivo Web.config de cada aplicación. Para obtener más información, vea Autenticación de formularios entre distintas aplicaciones.
Se puede superar el tamaño máximo del identificador URI cuando se envía el vale de autenticación de los formularios en el identificador URI. Si la combinación del vale de identificación anónimo, el vale de autenticación de los formularios, el identificador de sesión y los datos de usuario es mayor que la longitud máxima permitida del identificador URI, se generará el error 400 de solicitud incorrecta.
Configuración predeterminada
El siguiente elemento forms predeterminado no se configura explícitamente en el archivo Machine.config o en el archivo Web.config raíz. Sin embargo, es la configuración predeterminada que devuelve la aplicación en .NET Framework 2.0.
<forms
name=".ASPXAUTH"
loginUrl="login.aspx"
defaultUrl="default.aspx"
protection="All"
timeout="30"
path="/"
requireSSL="false"
slidingExpiration="true"
cookieless="UseDeviceProfile" domain=""
enableCrossAppRedirects="false">
<credentials passwordFormat="SHA1" />
</forms>
En .NET Framework 1.1, el siguiente elemento forms predeterminado se configura en el archivo Machine.config.
<forms
name=".ASPXAUTH"
loginUrl="login.aspx"
protection="All"
timeout="30"
path="/"
requireSSL="false"
slidingExpiration="true">
<credentials passwordFormat="SHA1"></credentials>
</forms>
En .NET Framework 1.0, el siguiente elemento forms predeterminado se configura en el archivo Machine.config.
<forms
name=".ASPXAUTH"
loginUrl="login.aspx"
protection="All"
timeout="30"
path="/" >
<credentials passwordFormat="SHA1"></credentials>
</forms>
Ejemplo
En el siguiente ejemplo de código se muestra cómo configurar un sitio para la autenticación basada en formularios, se especifica el nombre de la cookie que transmite la información de inicio de sesión del cliente y se especifica el nombre de la página de inicio de sesión que se va a utilizar si se genera un error en la autenticación inicial.
<configuration>
<system.web>
<authentication mode="Forms">
<forms
name="401kApp"
loginUrl="/login.aspx"
cookieless="AutoDetect"
defaultUrl="myCustomLogin.aspx">
<credentials passwordFormat = "SHA1">
<user name="UserName"
password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
</credentials>
</forms>
</authentication>
</system.web>
</configuration>
Información de elemento
Controlador de la sección de configuración |
|
Miembro de configuración |
|
Ubicaciones configurables |
Machine.config Web.config del nivel raíz Web.config del nivel de aplicaciones |
Requisitos |
Microsoft Internet Information Services (IIS) 5.0, 5.1 ó 6.0 .NET Framework versión 1.0, 1.1 ó 2.0 Microsoft Visual Studio 2003 o Visual Studio 2005 |
Vea también
Tareas
Cómo: Configurar directorios concretos mediante la configuración de la ubicación
Cómo: Bloquear los valores de configuración de ASP.NET
Referencia
Elemento authentication (Esquema de configuración de ASP.NET)
Elemento credentials para authentication (Esquema de configuración de ASP.NET)
Elemento system.web (Esquema de configuración de ASP.NET)
Elemento passport para authentication (Esquema de configuración de ASP.NET)
Elemento configuration (Esquema de configuración general)
Conceptos
Autenticación de formularios entre distintas aplicaciones
Jerarquía de archivos y herencia de la configuración de ASP.NET
Proteger la configuración de ASP.NET
Escenarios de configuración de ASP.NET
Otros recursos
Opciones de configuración generales (ASP.NET)
Opciones de configuración de ASP.NET
Administración de sitios web ASP.NET