Elemento <machineKey>
Configura las claves usadas en la codificación y descodificación de los datos de las cookies de autenticación de formularios y de los datos de estado de vista, así como para la verificación de identificaciones del estado de sesión fuera de proceso. Esta sección puede declararse en los equipos, sitios y aplicaciones, pero no en los subdirectorios.
<configuration>
<system.web>
<machineKey>
<machineKeyvalidationKey="AutoGenerate|value[,IsolateApps]" decryptionKey="AutoGenerate|value[,IsolateApps]" validation="SHA1|MD5|3DES"/>
Atributos requeridos
Atributo | Opción | Descripción |
---|---|---|
validationKey | Especifica la clave usada para la validación de datos codificados. validationKey se usa cuando enableViewStateMAC es true para crear un código de autenticación de mensajes (MAC) con el fin de garantizar que no se ha manipulado el estado de vista. validationKey se usa también para generar id. de sesión específicos a la aplicación y fuera de proceso que garanticen el aislamiento de las variables de estado de sesión entre sesiones. | |
AutoGenerate | Especifica que ASP.NET debe generar una clave aleatoria y almacenarla en LSA (Local Security Authority, Autoridad de seguridad local). El valor predeterminado es la opción AutoGenerate. Si se agrega el modificador IsolateApps al valor validationKey, ASP.NET generará para cada aplicación una clave codificada única utilizando el ID de la aplicación. | |
value | Especifica una clave de validación asignada manualmente. Este valor debe establecerse manualmente para asegurar una configuración coherente en toda la red de servidores Web (batería Web). Esta clave debe tener un mínimo de 40 caracteres (20 bytes) y un máximo de 128 (64 bytes). Si se usan claves con menos caracteres que el máximo, es recomendable crearlas con un medio auténticamente aleatorio, como RNGCryptoServiceProvider. La longitud de clave recomendada es 128 caracteres hexadecimales. Si se agrega el modificador IsolateApps al valor validationKey, ASP.NET generará para cada aplicación una clave codificada única utilizando el ID de la aplicación. | |
decryptionKey | Especifica la clave usada para codificar datos. decryptionKey se usa para la codificación y descodificación de autenticación mediante formularios y para la codificación del estado de la vista cuando validation es 3DES. | |
AutoGenerate | Especifica que ASP.NET debe generar una clave aleatoria y almacenarla en LSA (Local Security Authority, Autoridad de seguridad local). El valor predeterminado es la opción AutoGenerate. Si se agrega el modificador IsolateApps al valor decryptionKey, ASP.NET generará para cada aplicación una clave codificada única utilizando el ID de la aplicación. | |
value | Especifica una clave asignada manualmente. Este valor debe establecerse manualmente en una cadena de caracteres hexadecimales para asegurar una configuración coherente en toda la batería de servidores Web. La clave deberá tener 16 caracteres cuando se use la codificación DES y 48 si se usa la codificación Triple DES. Si se usa una clave con menos caracteres que el máximo, es recomendable crearla con un medio auténticamente aleatorio, como RNGCryptoServiceProvider. ASP.NET sólo puede usar Triple DES en equipos que permitan la codificación de 128 bits. Si se agrega el modificador IsolateApps al valor decryptionKey, ASP.NET generará para cada aplicación una clave codificada única utilizando el ID de la aplicación. | |
validación | Especifica el tipo de cifrado utilizado para la validación de datos. | |
SHA1 | Especifica que ASP.NET debe utilizar el cifrado SHA1. | |
MD5 | Especifica que ASP.NET debe utilizar el cifrado MD5. | |
3DES | Especifica que ASP.NET debe utilizar el cifrado Triple-DES (3DES). Cuando se especifica 3DES, la autenticación con formularios adopta como opción predeterminada SHA1. Cuando el atributo validation es 3DES, la técnica de validación del estado de la vista emplea el cifrado 3DES. |
Ejemplo
En el ejemplo siguiente se establece el valor AutoGenerate tanto en validationKey como en decryptionKey. Con el fin de generar claves únicas para cada aplicación en el servidor, se especifica la opción isolateApps.
<machineKey validationKey="AutoGenerate,IsolateApps"
decryptionKey="AutoGenerate,IsolateApps"
validation="SHA1"/>
Requisitos
Contenido dentro de: <system.web>
Plataforma Web: IIS 5.0, IIS 5.1, IIS 6.0
Archivo de configuración: Machine.config, Web.config
Controlador de la sección de configuración: System.Web.Configuration.MachineKeyConfigHandler
Vea también
Configuración de ASP.NET | Esquema de configuración de ASP.NET