Compartir a través de


MachineKeySection (clase)

Define las opciones de configuración que controlan la generación de claves y los algoritmos utilizados en las operaciones de cifrado, descifrado y MAC en la autenticación de Forms, la validación del estado de vista y el aislamiento de aplicaciones de estado de sesión.

Sintaxis

class MachineKeySection : ConfigurationSection  

Métodos

En la tabla siguiente se enumeran los métodos que expone la clase MachineKeySection.

Nombre Descripción
GetAllowDefinition (Se hereda de ConfigurationSection).
GetAllowLocation (Se hereda de ConfigurationSection).
RevertToParent (Se hereda de ConfigurationSection).
SetAllowDefinition (Se hereda de ConfigurationSection).
SetAllowLocation (Se hereda de ConfigurationSection).

Propiedades

La siguiente tabla muestra las propiedades que expone la clase MachineKeySection.

Nombre Descripción
Decryption Valor string recortado de lectura y escritura que especifica el tipo de algoritmo hash utilizado para descifrar los datos. Los valores posibles se enumeran más adelante en la sección Comentarios. El valor predeterminado es "Auto".
DecryptionKey Valor string recortado de lectura y escritura que especifica el proceso por el que se genera la clave o contiene texto que se usa para cifrar y descifrar datos. El valor predeterminado es "AutoGenerate,IsolateApps". Nota: Use la cadena "AutoGenerate" para especificar que ASP.NET genera una clave aleatoria y la almacena en la autoridad de seguridad local. La cadena "AutoGenerate" forma parte del valor predeterminado. Si agrega el modificador "IsolateApps" al valor DecryptionKey, ASP.NET genera una clave cifrada única para cada aplicación mediante su identificador de aplicación. "IsolateApps" también forma parte del valor predeterminado. Si necesita admitir la configuración en una red de servidores web (una granja de servidores web), establezca la propiedad DecryptionKey manualmente para garantizar una configuración coherente.
Location (Se hereda de ConfigurationSection). Una propiedad clave.
Path (Se hereda de ConfigurationSection). Una propiedad clave.
SectionInformation (Se hereda de ConfigurationSection).
Validation Valor sint32 de lectura y escritura que especifica el tipo de cifrado que se usa para validar los datos. Los valores posibles se enumeran más adelante en la sección Comentarios.
ValidationKey Valor string recortado de lectura y escritura que especifica el proceso por el que se genera la clave o contiene texto que se usa para validar los datos cifrados. El valor predeterminado es "AutoGenerate,IsolateApps". Nota: Cuando la propiedad EnableViewStateMAC de la clase PagesSection es true, ASP.NET usa la propiedad ValidationKey para crear un código de autenticación de mensaje para asegurarse de que el estado de vista no se ha alterado. La clave de validación también se usa para generar identificadores de sesión específicos de la aplicación fuera del proceso para asegurarse de que las variables de estado de sesión están aisladas entre las aplicaciones. Use la cadena "AutoGenerate" para especificar que ASP.NET genera una clave aleatoria y la almacena en la autoridad de seguridad local. La cadena "AutoGenerate" forma parte del valor predeterminado. Si agrega el modificador "IsolateApps" al valor ValidationKey, ASP.NET genera una clave cifrada única para cada aplicación mediante su identificador de aplicación. "IsolateApps" también forma parte del valor predeterminado. Si necesita admitir la configuración en una red de servidores web (una granja de servidores web), establezca la propiedad ValidationKey manualmente para garantizar una configuración coherente.

Subclases

Esta clase no contiene subclases.

Comentarios

Nota:

Para que la clase MachineKeySection funcione en una red de servidores web (una granja de servidores web), las propiedades MachineKeySection deben configurarse explícitamente y de forma idéntica con un valor de clave válido. El valor "AutoGenerate" no funciona para granjas de servidores web porque se basa en una clave criptográficamente aleatoria que solo se conserva en el equipo local. Cualquier otro equipo no puede descifrar esta clave.

En la siguiente tabla se describen los posibles valores de la propiedad Decryption. El valor predeterminado es "Auto".

Valor Descripción
Automático ASP.NET determina el algoritmo con el que descifrar los datos en función de las opciones de configuración predeterminadas.
AES ASP.NET usa el algoritmo AES para descifrar datos.
3DES ASP.NET usa el algoritmo Triple DES para descifrar datos.

En la siguiente tabla se describen los posibles valores de la propiedad Validation. El valor predeterminado es 1 (SHA1).

Valor Palabra clave Descripción
0 MD5 ASP.NET usa el cifrado MD5 (algoritmo de síntesis de mensajes 5).
1 SHA1 ASP.NET usa el cifrado SHA1 (algoritmo hash seguro 1).
2 3DES ASP.NET usa el cifrado Triple DES (estándar de cifrado de datos).
3 AES ASP.NET usa el cifrado AES (estándar de cifrado de datos).

Ejemplo

En el siguiente ejemplo se muestran los valores de configuración de MachineKeySection para el sitio web predeterminado.

' Connect to the WMI WebAdministration namespace.  
Set oWebAdmin = _  
    GetObject("winmgmts:root\WebAdministration")  
  
' Get the machine key section.  
Set oSite = oWebAdmin.Get("Site.Name='Default Web Site'")  
oSite.GetSection "MachineKeySection", oMKeySection  
  
' Display the path and location.  
WScript.Echo "Machine Key Section Settings"  
WScript.Echo "----------------------------"  
WScript.Echo "Path: " & oMKeySection.Path  
WScript.Echo "Location: " & oMKeySection.Location  
  
' Display the machine key settings.  
WScript.Echo "Decryption: " & oMKeySection.Decryption  
  
WScript.Echo "Decryption Key: " & _  
    oMKeySection.DecryptionKey      
  
WScript.Echo "Validation: " & _  
    ValidationText(oMKeySection.Validation)  
  
WScript.Echo "Validation Key: " & oMKeySection.ValidationKey  
  
' Convert the Validation enumeration values to text.  
Function ValidationText(enumValue)  
    Select Case enumValue  
        Case 0  
            ValidationText = "MD5"  
        Case 1  
            ValidationText = "SHA1"  
        Case 2  
            ValidationText = "3DES"  
        Case 3  
            ValidationText = "AES"  
        Case Else  
            ValidationText = "Undefined enumeration value."  
    End Select  
End Function  
  

Jerarquía de herencia

ConfigurationSection

MachineKeySection

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.MachineKeyValidationConfigurationSection (clase)
PagesSection (clase)