Freigeben über


MachineKeySection-Klasse

Definiert die Konfigurationseinstellungen, die die Schlüsselgenerierung und Algorithmen steuern, die in Verschlüsselungs-, Entschlüsselungs- und MAC-Vorgängen (Media Access Control) in Formularauthentifizierung, Ansichtsstatusüberprüfung und Anwendungsisolation mit Sitzungsstatus verwendet werden.

Syntax

class MachineKeySection : ConfigurationSection  

Methoden

In der folgenden Tabelle werden die Methoden aufgelistet, die von der MachineKeySection Klasse verfügbar gemacht werden.

Name Beschreibung
GetAllowDefinition (Geerbt von ConfigurationSection.)
GetAllowLocation (Geerbt von ConfigurationSection.)
RevertToParent (Geerbt von ConfigurationSection.)
SetAllowDefinition (Geerbt von ConfigurationSection.)
SetAllowLocation (Geerbt von ConfigurationSection.)

Eigenschaften

In der folgenden Tabelle sind die Eigenschaften aufgeführt, die von der MachineKeySection Klasse verfügbar gemacht werden.

Name Beschreibung
Decryption Ein beschnittener Lese-/Schreibstring-Wert, der den Typ des Hashingalgorithmus angibt, der zum Entschlüsseln von Daten verwendet wird. Die möglichen Werte werden weiter unten im Abschnitt Hinweise aufgeführt. Die Standardeinstellung ist „Automatisch“.
DecryptionKey Ein beschnittener Lese-/Schreibstring-Wert, der entweder den Prozess angibt, mit dem der Schlüssel generiert wird, oder Text enthält, der zum Verschlüsseln und Entschlüsseln von Daten verwendet wird. Der Standardwert ist "AutoGenerate,IsolateApps". Hinweis: Verwenden Sie die Zeichenfolge "AutoGenerate", um anzugeben, dass ASP.NET einen zufälligen Schlüssel generiert und in der lokalen Sicherheitsautorität speichert. Die Zeichenfolge "AutoGenerate" ist Teil des Standardwerts. Wenn Sie den Modifizierer "IsolateApps" zum DecryptionKey Wert hinzufügen, generiert ASP.NET mithilfe der Anwendungs-ID einen eindeutigen verschlüsselten Schlüssel für jede Anwendung. "IsolateApps" ist auch Teil des Standardwerts. Wenn Sie die Konfiguration über ein Netzwerk von Webservern (eine Webfarm) hinweg unterstützen müssen, legen Sie die DecryptionKey Eigenschaft manuell fest, um eine konsistente Konfiguration sicherzustellen.
Location (Geerbt von ConfigurationSection.) Eine Schlüsseleigenschaft.
Path (Geerbt von ConfigurationSection.) Eine Schlüsseleigenschaft.
SectionInformation (Geerbt von ConfigurationSection.)
Validation Ein Lese-/Schreibsint32-Wert, der den Verschlüsselungstyp angibt, der zum Überprüfen von Daten verwendet wird. Die möglichen Werte werden weiter unten im Abschnitt Hinweise aufgeführt.
ValidationKey Ein beschnittener Lese-/Schreibstring-Wert, der entweder den Prozess angibt, mit dem der Schlüssel generiert wird, oder Text enthält, der zum Überprüfen verschlüsselter Daten verwendet wird. Der Standardwert ist "AutoGenerate,IsolateApps". Hinweis: Wenn die EnableViewStateMAC Eigenschaft der PagesSection-Klasse lautet true, verwendet ASP.NET die ValidationKey Eigenschaft, um einen Nachrichtenauthentifizierungscode zu erstellen, um sicherzustellen, dass der Ansichtszustand nicht manipuliert wurde. Der Überprüfungsschlüssel wird auch verwendet, um Out-of-Process-IDs zu generieren, um sicherzustellen, dass Sitzungszustandsvariablen zwischen Anwendungen isoliert sind. Verwenden Sie die Zeichenfolge "AutoGenerate", um anzugeben, dass ASP.NET einen zufälligen Schlüssel generiert und in der lokalen Sicherheitsautorität speichert. Die Zeichenfolge "AutoGenerate" ist Teil des Standardwerts. Wenn Sie den Modifizierer "IsolateApps" zum ValidationKeyWert hinzufügen, generiert ASP.NET mithilfe der Anwendungs-ID einen eindeutigen verschlüsselten Schlüssel für jede Anwendung. "IsolateApps" ist auch Teil des Standardwerts. Wenn Sie die Konfiguration über ein Netzwerk von Webservern (eine Webfarm) hinweg unterstützen müssen, legen Sie die ValidationKey Eigenschaft manuell fest, um eine konsistente Konfiguration sicherzustellen.

Unterklassen

Diese Klasse enthält keine Unterklassen.

Hinweise

Hinweis

Damit die MachineKeySection Klasse über ein Netzwerk von Webservern (eine Webfarm) hinweg funktioniert, müssen die MachineKeySection Eigenschaften explizit und identisch mit einem gültigen Schlüsselwert konfiguriert werden. Der Wert "AutoGenerate" funktioniert nicht für Webfarmen, da er auf einem kryptografisch zufälligen Schlüssel basiert, der nur vom lokalen Computer beibehalten wird. Dieser Schlüssel kann von keinem anderen Computer entschlüsselt werden.

In der folgenden Tabelle werden die verschiedenen möglichen Werte für die Decryption Eigenschaft angezeigt. Die Standardeinstellung ist „Automatisch“.

Wert BESCHREIBUNG
Automatisch ASP.NET bestimmt den Algorithmus, mit dem Daten basierend auf den Standardkonfigurationseinstellungen entschlüsselt werden sollen.
AES ASP.NET verwendet den AES-Algorithmus zum Entschlüsseln von Daten.
3DES ASP.NET verwendet den Triple DES-Algorithmus zum Entschlüsseln von Daten.

In der folgenden Tabelle werden die verschiedenen möglichen Werte für die Validation Eigenschaft angezeigt. Der Standardwert ist 1 (SHA1).

Wert Schlüsselwort Beschreibung
0 MD5 ASP.NET verwendet MD5-Verschlüsselung (Message-Digest Algorithm 5).
1 SHA1 ASP.NET verwendet die SHA1-Verschlüsselung (Secure Hash Algorithm 1).
2 3DES ASP.NET verwendet die Triple DES(Data Encryption Standard)-Verschlüsselung.
3 AES ASP.NET verwendet die AES-Verschlüsselung (Advanced Encryption Standard).

Beispiel

Im folgenden Beispiel werden die MachineKeySectionEinstellungen für die Standardwebsite angezeigt.

' 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  
  

Vererbungshierarchie

ConfigurationSection

MachineKeySection

Anforderungen

type Beschreibung
Client - IIS 7.0 unter Windows Vista
IIS 7.5 unter Windows 7
IIS 8.0 unter Windows 8
IIS 10.0 unter Windows 10
Server IIS 7.0 unter Windows Server 2008
- IIS 7.5 unter Windows Server 2008 R2
IIS 8.0 auf Windows Server 2012.
- IIS 8.5 unter Windows Server 2012 R2
IIS 10.0 auf Windows Server 2016.
Produkt - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
MOF-Datei WebAdministration.mof

Weitere Informationen

System.Web.Configuration.MachineKeyValidationConfigurationSection-Klasse
PagesSection-Klasse