FormsAuthenticationConfiguration (clase)
Configura la autenticación de formularios para una aplicación de ASP.NET.
Sintaxis
class FormsAuthenticationConfiguration : EmbeddedObject
Métodos
Esta clase no contiene métodos.
Propiedades
La siguiente tabla muestra las propiedades expuestas por la clase FormsAuthenticationConfiguration
.
Nombre | Descripción |
---|---|
Cookieless |
Enumeración de lectura y escritura sint32 que especifica si la autenticación de formularios debe usar cookies. Los valores posibles se enumeran más adelante en la sección Comentarios. |
Credentials |
Un valor FormsAuthenticationCredentials que contiene una colección de nombres de usuario y contraseñas para utilizar durante la autenticación de formularios. Nota: Cuando se requiere seguridad, debe usar formas alternativas de almacenar nombres de usuario y contraseñas (por ejemplo, en un almacén de bases de datos). Si decide usar esta colección, debe especificar un formato de cifrado en la propiedad PasswordFormat de la clase FormsAuthenticationCredentials . |
DefaultUrl |
Un valor string de lectura/escritura no vacío que especifica la URL predeterminada a la que dirigir la solicitud tras la autenticación. El valor predeterminado es "default.aspx". |
Domain |
Un valor de lectura/escritura string que especifica el nombre de dominio que se enviará con las cookies de autenticación de formularios. El valor predeterminado es "". Para las cookies de autenticación de formularios, esta configuración tiene prioridad sobre la configuración de la propiedad Domain de la clase HttpCookiesSection. |
EnableCrossAppRedirects |
Valor boolean de lectura y escritura. true si los usuarios autenticados se pueden redirigir a las direcciones URL de otras aplicaciones; de lo contrario, false . El valor predeterminado es false . Si esta propiedad es true , se realiza el redireccionamiento; de lo contrario, el explorador se redirige a la página definida en la propiedad DefaultUrl . Nota: Cuando la autenticación de formularios está habilitada en varias aplicaciones de ASP.NET, no es necesario que los usuarios vuelvan a autenticarse cuando cambien entre las aplicaciones. Para obtener más información, consulte Autenticación de formularios entre aplicaciones. |
LoginUrl |
Un valor no vacío de lectura/escritura string que especifica la URL a la que se redirige la petición cuando el usuario no está autenticado o cuando no existe una cookie de autenticación válida. El valor predeterminado es "login.aspx". |
Name |
Un valor no vacío de lectura/escritura string que especifica el nombre de la cookie HTTP que se va a usar para la autenticación de solicitudes. El valor predeterminado es ".ASPXAUTH". |
Path |
Un valor no vacío de lectura/escritura string que especifica la ruta de la cookie HTTP que se va a usar para la autenticación. La ruta de acceso se transmite junto con la propia cookie de autenticación. El valor predeterminado es "/", que representa la raíz de la aplicación web. |
Protection |
Valor de lectura y escritura sint32 que especifica el método de cifrado utilizado para la cookie. Los valores posibles se enumeran más adelante en la sección Comentarios. |
RequireSSL |
Valor boolean de lectura y escritura. true si se requiere una conexión de capa de sockets seguros (SSL) para la autenticación; de lo contrario, false . El valor predeterminado es false . Si esta propiedad es true , una aplicación web rechaza todas las solicitudes de autenticación de formularios que no usan una conexión SSL. |
SlidingExpiration |
Valor boolean de lectura y escritura. true si la expiración de la cookie de autenticación se establecerá en la fecha y hora actuales más el valor, en minutos, en la propiedad Timeout ; en caso contrario, false . El valor predeterminado es true .Si true , la fecha y hora de expiración de la cookie se restablecerá automáticamente si queda menos de la mitad del valor en Timeout y el usuario sigue utilizando activamente la aplicación. Si false , la cookie caduca automáticamente una vez transcurrido el intervalo especificado en la propiedad Timeout . |
Timeout |
Un valor de lectura/escritura datetime que especifica el tiempo tras el cual expira la autenticación. El valor predeterminado es de 30 minutos. |
Subclases
Esta clase no contiene subclases.
Comentarios
Las instancias de esta clase se encuentran en la propiedad Forms
de la clase AuthenticationSection.
En la siguiente tabla se describen los posibles valores de la propiedad Cookieless
. El valor predeterminado es 3 (UseDeviceProfile
).
Valor | Palabra clave | Descripción |
---|---|---|
0 | UseUri |
Especifica que la característica de llamada usa la cadena de consulta para almacenar un identificador, independientemente de si el explorador o el dispositivo admiten cookies. |
1 | UseCookies |
Especifica que las cookies se usan para conservar los datos de usuario, independientemente de si el explorador o el dispositivo admiten cookies. |
2 | AutoDetect |
Especifica que ASP.NET determina si el explorador o el dispositivo de solicitud admiten cookies. Si el navegador o el dispositivo admite cookies, la característica de solicitud utiliza cookies para conservar los datos de usuario; de lo contrario, la característica de solicitud usa un identificador en la cadena de consulta. Si el navegador o el dispositivo admite las cookies, pero las cookies están deshabilitadas actualmente, la característica de solicitud sigue usando cookies. |
3 | UseDeviceProfile |
Especifica que ASP.NET determina si se deben utilizar cookies basándose en la propiedad Cookies de la clase System.Web.Configuration.HttpCapabilitiesBase. Si la configuración indica que el navegador o el dispositivo admite cookies, la característica de solicitud utiliza cookies; de lo contrario, la característica de solicitud usa un identificador en la cadena de consulta. |
En la siguiente tabla se describen los posibles valores de la propiedad Protection
. El valor predeterminado es 0 (All
).
Valor | Palabra clave | Descripción |
---|---|---|
0 | All |
Especifica que la aplicación usará tanto la validación como el cifrado de datos para ayudarle proteger las cookies. Esta opción usa el algoritmo de validación de datos especificado en la clase MachineKeySection. La aplicación usa el estándar de cifrado de datos triple (Triple DES) para el cifrado si está disponible y si la clave tiene al menos 48 bytes de longitud. Nota: Esta es la configuración recomendada. Para mejorar la protección de la cookie, es posible que también desee establecer la propiedad RequireSSL en true . |
1 | None |
Especifica que el cifrado y la validación están deshabilitados. Esta configuración es para sitios con requisitos de seguridad más débiles que usan cookies solo para la personalización. Debe evitar el uso de cookies de esta manera. Sin embargo, este es el modo que menos recursos utiliza para habilitar la personalización mediante el uso de .NET Framework. |
2 | Encryption |
Especifica que las cookies se cifran con Triple DES o DES. Con esta configuración, no se realiza la validación de datos en las cookies, lo que las hace vulnerables frente a ataques de seguridad de texto no cifrado. |
3 | Validation |
Especifica que la aplicación usará un esquema de validación para comprobar que el contenido de una cookie cifrada no se ha modificado en tránsito. La cookie se crea concatenando una clave de validación con los datos de la cookie, calculando un código de autenticación de mensajes (MAC) y anexando el MAC a la cookie de salida. |
Ejemplo
En el ejemplo siguiente se muestra la configuración de autenticación de formularios para el sitio web predeterminado.
' Connect to the WMI WebAdministration namespace.
Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")
' Get the authentication section.
Set oSite = oWebAdmin.Get("Site.Name='Default Web Site'")
oSite.GetSection "AuthenticationSection", oAuthSection
' Assign the Forms property to a variable.
Set oFormsAuthConfig = oAuthSection.Forms
' Display the Forms authentication settings.
WScript.Echo "Forms Authentication Settings"
WScript.Echo "-----------------------------"
WScript.Echo "Cookieless: [ " & _
CookielessText(oFormsAuthConfig.Cookieless)& " ]"
WScript.Echo "Default Url: [ " & _
oFormsAuthConfig.DefaultUrl& " ]"
WScript.Echo "Domain: [ " & oFormsAuthConfig.Domain& " ]"
WScript.Echo "EnableCrossAppRedirects: [ " & _
oFormsAuthConfig.EnableCrossAppRedirects& " ]"
WScript.Echo "LoginUrl: [ " & _
oFormsAuthConfig.LoginUrl & " ]"
WScript.Echo "Name: [ " & oFormsAuthConfig.Name& " ]"
WScript.Echo "Path: [ " & oFormsAuthConfig.Path& " ]"
WScript.Echo "Protection: [ " & _
ProtectionText(oFormsAuthConfig.Protection)& " ]"
WScript.Echo "RequireSSL: [ " & _
oFormsAuthConfig.RequireSSL& " ]"
WScript.Echo "SlidingExpiration: [ " & _
oFormsAuthConfig.SlidingExpiration& " ]"
WScript.Echo "Timeout: [ " & oFormsAuthConfig.Timeout& " ]"
' Call a sub to display the credentials information.
DisplayCredentials(oFormsAuthConfig.Credentials)
' Convert the Cookieless enumeration values to text.
Function CookielessText(enumValue)
Select Case enumValue
Case 0
CookielessText = "UseUri"
Case 1
CookielessText = "UseCookies"
Case 2
CookielessText = "AutoDetect"
Case 3
CookielessText = "UseDeviceProfile"
Case Else
CookielessText = "Undefined enumeration value."
End Select
End Function
' Convert the Protection enumeration values to text.
Function ProtectionText(enumValue)
Select Case enumValue
Case 0
ProtectionText = "All"
Case 1
ProtectionText = "None"
Case 2
ProtectionText = "Encryption"
Case 3
ProtectionText = "Validation"
Case Else
ProtectionText = "Undefined enumeration value."
End Select
End Function
' Display the Forms authentication credentials.
Sub DisplayCredentials(FA_Credentials)
WScript.Echo vbCrLf & "Forms Authentication Credentials"
WScript.Echo "--------------------------------"
' Display the password encryption format.
WScript.Echo "Password Format: " & _
PwdFormatText(FA_Credentials.PasswordFormat) & VbCrLf
' Display the Forms authentication users and passwords.
For Each FormsAuthUser In FA_Credentials.Credentials
WScript.Echo " Name: [ " & FormsAuthUser.Name & " ]"
WScript.Echo "Password: [ " & _
FormsAuthUser.Password& " ]"
WScript.Echo
Next
End Sub
' Convert the PasswordFormat enumeration values to text.
Function PwdFormatText(enumValue)
Select Case enumValue
Case 0
PwdFormatText = "Clear"
Case 1
PwdFormatText = "SHA1"
Case 2
PwdFormatText = "MD5"
Case Else
PwdFormatText = "Undefined enumeration value."
End Select
End Function
Jerarquía de herencia
FormsAuthenticationConfiguration
Requisitos
Tipo | Descripción |
---|---|
Remoto | - IIS 7.0 en Windows Vista - IIS 7.5 en Windows 7 - IIS 8.0 en Windows 8 - IIS 10.0 en Windows 10 |
Server | - IIS 7.0 en Windows Server 2008 - IIS 7.5 en Windows Server 2008 R2 - IIS 8.0 en Windows Server 2012 - IIS 8.5 en Windows Server 2012 R2 - IIS 10.0 en Windows Server 2016 |
Producto | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 |
Archivo MOF | WebAdministration.mof |
Consulte también
System.Web.Configuration.AuthenticationModeSystem.Web.Configuration.FormsAuthenticationConfigurationSystem.Web.Configuration.HttpCapabilitiesBaseAuthenticationSection (clase)
Clase EmbeddedObject
Clase FormsAuthenticationCredentials
Clase FormsAuthenticationUser
Clase MachineKeySection
Autenticación de formularios entre aplicaciones
CIM_DATETIME