processModel-Element (ASP.NET-Einstellungsschema)

[Dieses Dokument dient lediglich Vorschauzwecken und kann in späteren Versionen geändert werden. Leere Themen sind als Platzhalter enthalten.]

Konfiguriert die Einstellungen des ASP.NET-Prozessmodells auf einem Microsoft IIS-Webserver (Internetinformationsdienste, IIS). Der processModel-Abschnitt kann nur in der Datei Machine.config festgelegt werden und wirkt sich auf alle ASP.NET-Anwendungen aus, die auf dem Server ausgeführt werden.

Warnung

Änderungen am processModel-Element werden nicht sofort nach Änderung der Einstellung wirksam, wie es bei anderen Konfigurationselementen der Fall ist, sondern erst nach einem Neustart des Arbeitsprozesses.Weitere Informationen finden Sie unter "Hinweise" weiter unten in diesem Thema.

<processModel 
   enable="true|false"
   timeout="hrs:mins:secs|Infinite" 
   idleTimeout="hrs:mins:secs|Infinite"
   shutdownTimeout="hrs:mins:secs|Infinite"
   requestLimit="num|Infinite"
   requestQueueLimit="num|Infinite"
   restartQueueLimit="num|Infinite"
   memoryLimit="percent"
   webGarden="true|false"
   cpuMask="num"
   userName="<username>"
   password="<secure password>"
   logLevel="All|None|Errors"
   clientConnectedCheck="hrs:mins:secs|Infinite"
   comAuthenticationLevel="Default|None|Connect|Call| 
               Pkt|PktIntegrity|PktPrivacy"
   comImpersonationLevel="Default|Anonymous|Identify|
               Impersonate|Delegate"
   responseDeadlockInterval="hrs:mins:secs|Infinite"
   responseRestartDeadlockInterval="hrs:mins:secs|Infinite"
   autoConfig="true|false"
   maxWorkerThreads="num"
   maxIoThreads="num"
   minWorkerThreads="num"
   minIoThreads="num"
   serverErrorMessageFile="" 
   pingFrequency="Infinite" 
   pingTimeout="Infinite" 
   maxAppDomains="2000"
/>

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.

Attribute

Attribut

Beschreibung

autoConfig

Legt fest, ob die folgenden Einstellungen zum Erzielen der optimalen Leistung automatisch basierend auf der Computerkonfiguration konfiguriert werden:

Die Werte werden entsprechend dem KB-Artikel unter https://support.microsoft.com/?id=821268 festgelegt.

Dieses Attribut hat keine Auswirkungen auf .NET Framework-Clientanwendungen, sondern lediglich auf ASP.NET-Anwendungen.

Das autoConfig -Attribut kann einen der folgenden Werte annehmen.

BegriffDefinition
True Gibt an, dass ASP.NET die oben aufgelisteten Attribute automatisch konfiguriert, um optimale Leistung basierend auf der Computerkonfiguration zu erzielen.
False Gibt an, dass ASP.NET für die oben aufgelisteten Attribute die explizit definierten Werte verwenden soll.

Der Standardwert in der Datei Machine.config ist True, falls keine frühere Konfiguration vorhanden ist.

clientConnectedCheck

Gibt an, wie lange eine Anforderung in der Warteschlange verbleibt, bevor ASP.NET eine Überprüfung ausführt, um zu bestimmen, ob eine Verbindung zum Client besteht.

Der Standardwert ist "00:00:05" (5 Sekunden).

comAuthenticationLevel

Gibt die Ebene der Authentifizierung für DCOM-Sicherheit an.

Das comAuthenticationLevel-Attribut kann einen der folgenden Werte annehmen.

WertBeschreibung
Call Gibt an, dass DCOM die Anmeldeinformationen des Clients authentifiziert, wenn der Server die Anforderung am Beginn jedes Remoteprozeduraufrufs erhält.
Connect Gibt an, dass DCOM die Anmeldeinformationen des Clients nur dann authentifiziert, wenn der Client eine Verbindung zum Server aufbaut.
Default Gibt an, dass DCOM die Authentifizierungsebene mithilfe des standardmäßigen Sicherheitsaushandlungsalgorithmus bestimmt.
None Gibt keine Authentifizierung an.
Pkt Gibt an, dass DCOM authentifiziert, dass alle empfangenen Daten vom erwarteten Client stammen.Bei der Übertragung von Datagrammen wird immer die Pkt-Authentifizierung verwendet.
PktIntegrity Gibt an, dass DCOM authentifiziert und überprüft, dass die zwischen dem Client und dem Server übertragenen Daten nicht geändert wurden.
PktPrivacy Gibt an, dass DCOM alle vorigen Ebenen authentifiziert und den Argumentwert jedes Remoteprozeduraufrufs verschlüsselt.

Der Standardwert ist Connect.

comImpersonationLevel

Gibt die Authentifizierungsebene für COM-Sicherheit an.

Das comImpersonationLevel -Attribut kann einen der folgenden Werte annehmen.

WertBeschreibung
Anonymous Gibt an, dass der Client für den Server anonym ist.Der Server kann die Identität das Clients annehmen, das Identitätswechseltoken enthält jedoch keine Informationen.Anonymous wird in .NET Framework, Version 1.1, nicht unterstützt.
Default Gibt an, dass DCOM die Ebene des Identitätswechsels mithilfe des standardmäßigen Sicherheitsaushandlungsalgorithmus bestimmt.
Delegate Gibt an, dass der Serverprozess beim Agieren als Client den Sicherheitskontext des Clients imitieren kann.Mithilfe eines "Cloaking" genannten Verfahrens kann der Serverprozess auch ausgehende Aufrufe an andere Server ausführen, während er als Client agiert.Der Server kann den Sicherheitskontext des Clients auf anderen Computern verwenden, um als der Client auf lokale Ressourcen und Remoteressourcen zuzugreifen.Wenn der Identitätswechsel auf dieser Ebene erfolgt, kann das Identitätswechseltoken über eine beliebige Anzahl von Computern übertragen werden.
Identify Gibt an, dass der Server die Identität des Clients abrufen kann.Der Server kann für die Überprüfung der Zugriffssteuerungsliste die Identität des Clients annehmen, er kann jedoch nicht als Client auf Systemobjekte zugreifen.
Impersonate Gibt an, dass der Serverprozess beim Agieren als Client den Sicherheitskontext des Clients imitieren kann.Diese Ebene des Identitätswechsels kann für den Zugriff auf lokale Ressourcen wie Dateien verwendet werden.Wenn Identitätswechsel auf dieser Ebene erfolgt, kann das Identitätswechseltoken nur über einen Computer übertragen werden.

Der Standardwert ist Impersonate.

cpuMask

Gibt an, welche Prozessoren (CPUs) eines Multiprozessorservers für die Ausführung von ASP.NET-Prozessen vorgesehen sind. Dieser Wert gibt ein Bitmuster an, das die für die Ausführung von ASP.NET-Threads vorgesehenen CPUs angibt. Der cpuMask-Hexadezimalwert 0x0d stellt z. B. das Bitmuster 1101 dar. Auf einem Computer mit vier CPUs bedeutet dies, dass ASP.NET-Prozesse auf den CPUs 0, 2 und 3, jedoch nicht auf CPU 1 geplant werden können. ASP.NET startet einen Arbeitsprozess für jede qualifizierte CPU. Wenn das webGarden-Attribut den Wert true hat, beschränkt dieses Attribut die Anzahl der Arbeitsprozesse auf die Anzahl der vorgesehenen CPUs. Der Maximalwert für die Anzahl der Arbeitsprozesse ist die Anzahl der CPUs. Wenn das webGarden-Attribut den Wert false hat, wird das Attribut ignoriert, und es wird nur ein Arbeitsprozess ausgeführt. Dies ist das Standardverhalten.

Der Standardwert ist "0xffffffff".

enable

Gibt an, ob das Prozessmodell aktiviert ist.

Das enable -Attribut kann einen der folgenden Werte annehmen.

WertBeschreibung
True Gibt an, dass das Prozessmodell aktiviert ist.
False Gibt an, dass das Prozessmodell nicht aktiviert ist.

Die Standardeinstellung ist true.

idleTimeout

Gibt die Inaktivitätsdauer im Zeichenfolgenformat Std.:Min.:Sek. an. Nach Ablauf dieses Zeitraums beendet ASP.NET den Arbeitsprozess automatisch.

Der Standardwert ist Infinite.

logLevel

Gibt Ereignistypen an, die im Ereignisprotokoll erfasst werden sollen.

Das logLevel -Attribut kann einen der folgenden Werte annehmen.

WertBeschreibung
All Gibt an, dass alle Prozessereignisse protokolliert werden.
Errors Gibt an, dass nur unerwartete Abschaltvorgänge sowie Abschaltvorgänge aufgrund ausgelasteter Speicherkapazitäten und von Deadlocks im Protokoll erfasst werden.
None Gibt an, dass keine Ereignisse protokolliert werden.

Der Standardwert ist Errors.

maxAppDomains

Gibt die maximale Anzahl von Anwendungsdomänen an, die in einem Prozess zugelassen sind.

Der Wert dieses Attributs kann kleiner oder gleich 2000 sein.

Der Standardwert ist 2000.

maxIoThreads

Konfiguriert die maximale Anzahl von E/A-Threads, die pro CPU für den Prozess verwendet werden können. Wenn dieser Wert z. B. 25 auf einem einzelnen-Prozessor-Server beträgt, legt ASP.NET die Prozessgrenze mithilfe der Laufzeit-APIs auf 25 fest. Auf einem Server mit zwei Prozessoren wird die Grenze auf 50 festgelegt. Der Wert dieses Attributs muss gleich der oder größer als die minFreeThread-Attributeinstellung im httpRuntime-Konfigurationsabschnitt sein.

Informationen zu Threadingtypen finden Sie unter Improving ASP.NET Performance im Abschnitt "Threading Explained".

Dieses Attribut kann Werte im Bereich von 5 bis 100 annehmen.

Der Standardwert ist 20.

maxWorkerThreads

Konfiguriert die maximale Anzahl von Arbeitsthreads, die pro CPU für den Prozess verwendet werden können. Wenn dieser Wert z. B. 25 auf einem einzelnen-Prozessor-Server beträgt, legt ASP.NET die Prozessgrenze mithilfe der Laufzeit-APIs auf 25 fest. Auf einem Server mit zwei Prozessoren wird die Grenze auf 50 festgelegt. Der Wert dieses Attributs muss gleich der oder größer als die minFreeThread-Attributeinstellung im httpRuntime-Konfigurationsabschnitt sein.

Informationen zu Threadingtypen finden Sie unter Improving ASP.NET Performance im Abschnitt "Threading Explained".

Dieses Attribut kann Werte im Bereich von 5 bis 100 annehmen.

Der Standardwert ist 20.

memoryLimit

Gibt den maximal zulässigen Arbeitsspeicher in Prozent des gesamten Systemarbeitsspeichers an, der für die Arbeitsprozesse verwendet werden kann, bevor ASP.NET einen neuen Prozess startet und vorhandene Anforderungen neu zuweist.

Der Standardwert ist 60.

minIoThreads

Konfiguriert die Mindestanzahl von E/A-Threads, die pro CPU für den Prozess verwendet werden können. Siehe auch maxIoThreads.

Informationen zu Threadingtypen finden Sie unter Improving ASP.NET Performance im Abschnitt "Threading Explained".

Der Standardwert ist 1.

minWorkerThreads

Konfiguriert die minimale Anzahl von Arbeitsthreads, die pro CPU für den Prozess verwendet werden können. Siehe auch maxWorkerThreads.

Informationen zu Threadingtypen finden Sie unter Improving ASP.NET Performance im Abschnitt "Threading Explained".

Der Standardwert ist 1.

password

Wenn vorhanden (und in Verbindung mit einem userName), bewirkt dieses Attribut, dass der Arbeitsprozess mit der konfigurierten Windows-Identität ausgeführt wird. Weitere Informationen zu den Sondernamen System und Machine, die kein Kennwort erfordern, sowie Informationen zum Speichern von verschlüsselten Arbeitsprozess-Anmeldeinformationen in der Registrierung finden Sie in der Beschreibung von userName.

NoteNote
Das Speichern von Anmeldeinformationen in einer Konfigurationsdatei birgt gewisse Sicherheitsrisiken.Weitere Informationen finden Sie weiter unten in diesem Dokument unter "Speichern von Benutzername und Kennwort in der Registrierung".

Der Standardwert ist AutoGenerate.

pingFrequency

Gibt im standardmäßigen Prozessmodellformat (Std.:Min.:Sek.) an, in welchen Zeitabständen die ISAPI-Erweiterung ein Pingsignal an den Arbeitsprozess sendet, um zu überprüfen, ob dieser ausgeführt wird. Wenn er während des pingTimeout-Intervalls nicht ausgeführt wird, wird der Arbeitsprozess neu gestartet.

Der Standardwert ist Infinite.

pingTimeout

Gibt im standardmäßigen Prozessmodellformat (Std.:Min.:Sek.) an, nach welcher Zeit nach einer Anfrage ein Arbeitsprozess neu gestartet wird, wenn keine Antwort erfolgt. Die ISAPI-Erweiterungen senden Ping-Signale an den Arbeitsprozess im pingFrequency-Intervall. Wenn der Arbeitsprozess innerhalb des pingTimeout-Intervalls nicht antwortet, wird der Prozess neu gestartet.

Der Standardwert ist Infinite.

requestLimit

Gibt die Anzahl der Anforderungen an, die zulässig sind, bevor ASP.NET automatisch einen neuen Arbeitsprozess startet, der an die Stelle des aktuellen Arbeitsprozesses tritt.

Der Standardwert ist Infinite.

requestQueueLimit

Legt die zulässige Anzahl von Anforderungen in der Warteschlange fest, bevor ASP.NET für neue Anforderungen die Fehlermeldung "503 – Der Server ist ausgelastet" zurückgibt.

Der Standardwert ist 5000.

responseDeadlockInterval

Gibt im standardmäßigen Prozessmodellformat (Std.:Min.:Sek.) das Zeitintervall an, nach dem der Prozess neu gestartet wird, wenn die folgenden Bedingungen zutreffen:

  • Es sind Anforderungen in der Warteschlange enthalten.

  • Es lag keine Antwort innerhalb dieses Zeitintervalls vor.

Der Standardwert ist "0:03:00" (3 Minuten).

responseRestartDeadlockInterval

Dieses Attribut wird in ASP.NET nicht mehr verwendet und nur aus Kompatibilitätsgründen bereitgestellt. Dieses Attribut bewirkt jedoch keinen Konfigurationsfehler, wenn es bereits in einer Konfigurationsdatei vorhanden ist. Wiederverwendungen im Falle von Deadlockbedingungen werden nun mit dem responseDeadlockInterval-Attribut gesteuert.

Der Standardwert ist "0:03:00" (3 Minuten).

restartQueueLimit

Legt die maximale Anzahl von Anforderungen fest, die in die Warteschlange eingereiht werden, während nach einer nicht standardmäßigen Beendigung auf den Neustart des Arbeitsprozesses gewartet wird. Diese Einstellung gilt nicht für den Fall des sauberen Herunterfahrens oder eines standardmäßigen Neustarts.

Der Standardwert ist 10.

serverErrorMessageFile

Gibt den Inhalt einer Datei an, der im Falle eines schwerwiegenden Fehlers anstelle der Standardmeldung "Server nicht verfügbar" ausgegeben wird. Der Speicherort der Datei kann relativ zum Speicherort der Datei Machine.config oder als absoluter Dateipfad angegeben werden. Wenn dieses Attribut nicht vorhanden ist, wird die Standardmeldung "Server nicht verfügbar" verwendet.

shutdownTimeout

Gibt die Anzahl der Minuten an, die für das Beenden des Arbeitsprozesses zur Verfügung stehen. Nach Ablauf des Timeouts beendet ASP.NET den Arbeitsprozess. Die Zeit wird im Zeichenfolgenformat Std.:Min.:Sek. ausgedrückt.

Der Standardwert ist "0:00:05" (5 Sekunden).

timeout

Gibt an, nach wie viel Minuten ASP.NET einen neuen Arbeitsprozess startet, der an die Stelle des aktuellen Arbeitsprozesses tritt.

Der Standardwert ist Infinite.

userName

Gibt an, dass ASP.NET den Arbeitsprozess mit einer Windows-Identität ausführt, die von der Windows-Identität für die Standardprozessidentität abweicht. Dieses Attribut ist standardmäßig auf Machine festgelegt, und der Prozess wird unter einem Benutzerkonto mit dem Namen ASPNET ausgeführt, das bei der Installation von ASP.NET automatisch erstellt wird. Das Kennwort für das Konto ASPNET wird bei der Installation kryptografisch erstellt. Wenn dieses Attribut und das password-Attribut gültige Anmeldeinformationen enthalten, wird der Prozess unter dem angegebenen Konto ausgeführt. Ein weiterer Wert für userName ist System, wobei das Kennwort AutoGenerate ist. Dabei wird der Prozess unter einem Administratorkonto ausgeführt, und sämtlicher ASP.NET-Benutzercode, der unter diesem Prozess ausgeführt wird, verfügt über vollständige Administratorrechte. Informationen zur Verwendung von ASP.NET auf einem Server, der ein Domänencontroller ist, finden Sie im Abschnitt "Hinweise" weiter unten.

NoteNote
Dieses Attribut und das password-Attribut werden im Klartext in der Konfigurationsdatei gespeichert.Obwohl Microsoft Internetinformationsdienste (IIS) CONFIG-Dateien nicht als Antwort auf Anforderungen von Benutzer-Agents sendet, können die Konfigurationsdateien auf andere Weise gelesen werden.Beispielsweise kann eine Konfigurationsdatei von einem authentifizierten Benutzer gelesen werden, der über gültige Anmeldeinformationen für die Domäne des Servers verfügt.Aus Sicherheitsgründen unterstützt der processModel-Abschnitt die Speicherung verschlüsselter userName-Attribute und verschlüsselter password-Attribute in der Registrierung.Die Anmeldeinformationen müssen im REG_BINARY-Format vorliegen und mit der DPAPI (Data Protection API) von Windows 2000 und Windows XP verschlüsselt werden.Weitere Informationen finden Sie weiter unten in diesem Dokument unter "Speichern von Benutzername und Kennwort in der Registrierung".

Der Standardwert ist "machine".

webGarden

Bei Verwendung in Verbindung mit dem cpuMask-Attribut steuert dieses Attribut die CPU-Affinität. (Multiprozessor-Webserver werden als Webgarten bezeichnet).

Das webGarden -Attribut kann einen der folgenden Werte annehmen.

WertBeschreibung
True Gibt an, dass das cpuMask-Attribut zum Festlegen der CPUs verwendet wird, die für die Ausführung von ASP.NET-Prozessen vorgesehen sind.
False Gibt an, dass die CPU-Auslastung vom Windows-Betriebssystem geplant wird.Das cpuMask-Attribut wird ignoriert, und es wird nur ein Arbeitsprozess ausgeführt.

Der Standardwert ist False.

Untergeordnete Elemente

Keine.

Übergeordnete Elemente

Element

Beschreibung

system.web

Gibt das Stammelement für den ASP.NET-Konfigurationsabschnitt an und enthält Konfigurationselemente, die ASP.NET-Webanwendungen konfigurieren und das Verhalten der Anwendungen steuern.

Hinweise

Das Konfigurationssystem für verwalteten Code liest nicht die processModel -Konfigurationseinstellungen. Stattdessen werden die processModel -Konfigurationseinstellungen direkt von der nicht verwalteten DLL aspnet_isapi.dll gelesen. Änderungen an diesem Abschnitt werden erst nach dem Neustart des IIS-Arbeitsprozesses übernommen.

Bei Ausführung von ASP.NET unter IIS, Version 6, im systemeigenen Modus wird das IIS 6-Prozessmodell verwendet, und einige der Attribute im processModel -Abschnitt werden ignoriert. Die folgenden Attribute sind jedoch weiterhin gültig:

  • autoConfig

  • maxIoThreads

  • maxWorkerThreads

  • minIoThreads

  • minWorkerThreads

  • requestQueueLimit

  • responseDeadlockInterval

Informationen zum IIS 7-Prozessmodell finden Sie unter Prozessmodelleinstellungen für einen Anwendungspool.

Zum Konfigurieren der Prozessidentität, der Zyklen und anderer Prozessmodellwerte in IIS 6.0 verwenden Sie die Benutzeroberfläche des Internetdienste-Managers, um den IIS-Arbeitsprozess für die Anwendung zu konfigurieren.

Hinweis

ASP.NET 2.0 kann nicht verwendet werden, wenn Sie IIS 6 zur Ausführung von ASP.NET im IIS 5.0-Isolierungsmodus konfigurieren.

Zeitwerte werden im Format "Stunden:Minuten:Sekunden" angegeben. Wenn eine einzelne Zahl ohne Doppelpunkte angegeben wird, wird angenommen, dass dieser Wert Minuten angibt. Der Wert timeout="4" entspricht also timeout="00:04:00".

Wenn eine ASP.NET-Anwendung den Neustart des ASP.NET-Arbeitsprozesses (aspnet_wp.exe unter Windows 2000 und Windows XP Professional, w3wp.exe unter Windows Server 2003) verursacht und dabei eine Fehlermeldung ausgibt, derzufolge der Neustart aufgrund eines vermuteten Deadlockzustand ausgeführt wurde, müssen Sie den Wert des responseDeadlockInterval-Attributs erhöhen.

Domänencontroller und das lokale ASPNET-Konto

Wenn Sie .NET Framework, Version 1.1, auf einem Domänencontroller installieren, wird bei der Installation nicht das lokale Konto ASPNET erstellt. Stattdessen werden ASP.NET-Anwendungen unter folgenden anderen Identitäten ausgeführt:

  • Auf Domänencontrollern, die unter Windows 2000 Server ausgeführt werden, werden ASP.NET-Anwendungen unter der Identität IWAM_computername ausgeführt.

  • Auf Domänencontrollern, die unter Windows Server 2003 ausgeführt werden, werden ASP.NET-Anwendungen unter dem NETZWERKDIENST-Konto ausgeführt (unabhängig vom IIS-Isolierungsmodus).

Unter bestimmten Umständen müssen Sie bei der Ausführung von ASP.NET auf einem Domänencontroller zusätzliche Schritte ausführen, damit die Installation ordnungsgemäß funktioniert. Weitere Informationen zur Ausführung von .NET Framework, Version 1.1, auf einem Domänencontroller finden Sie im Knowledge Base-Artikel Q824308, "IWAM Account is Not Granted the Impersonate Privilege for ASP.NET 1.1 on Windows 2000 Domain Controller with SP4", den Sie über die Knowledge Base-Suchseite finden. Weitere Informationen zur Ausführung von .NET Framework, Version 1.0, auf einem Domänencontroller finden Sie im Knowledge Base-Artikel Q315158, "ASP.NET Does Not Work with the Default ASPNET Account on a Domain Controller", den Sie über die Knowledge Base-Suchseite finden.

Speichern von Benutzername und Kennwort in der Registrierung

Um den Benutzernamen und das Kennwort zu verschlüsseln und in der Registrierung zu speichern, legen Sie das userName-Attribut und das password-Attribut auf die im folgenden Beispiel gezeigten Werte fest.

   userName="registry:HKLM\Software\AspNetProcess,Name"
   password="registry:HKLM\Software\AspNetProcess,Pwd"

Der Bereich der Zeichenfolge zwischen dem Schlüsselwort registry und dem Komma (,) gibt den Namen des Registrierungsschlüssels an, der von ASP.NET geöffnet wird. Der Abschnitt hinter dem Komma (,) enthält die Bezeichnung eines einzelnen Zeichenfolgenwerts, aus dem ASP.NET die Anmeldeinformationen entnimmt. Das Komma (,) ist erforderlich, und die Anmeldeinformationen müssen im HKLM-Hive gespeichert werden. Wenn ein falsches Konfigurationsformat verwendet wird, startet ASP.NET den Arbeitsprozess nicht und folgt dem aktuellen Codepfad für Fehler bei der Kontoerstellung.

Die Anmeldeinformationen müssen im REG_BINARY-Format vorliegen und die Ausgabedaten eines Aufrufs der Windows-API-Funktion CryptProtectData enthalten. Mit Aspnet_setreg.exe können Sie die verschlüsselten Anmeldeinformationen erstellen und in der Registrierung speichern. Aspnet_setreg.exe verwendet zum Ausführen der Verschlüsselung CryptProtectData. Sie können Aspnet_setreg.exe zusammen mit dem Microsoft Visual C++-Quellcode und der Dokumentation herunterladen, indem Sie die ASP.NET-Website aufrufen und nach "aspnet_setreg" suchen.

Sie sollten den Zugriff auf den Schlüssel mit den verschlüsselten Anmeldeinformationen so konfigurieren, dass nur Administratoren und das SYSTEM-Konto Zugriff erhalten. Da der Schlüssel vom ASP.NET-Prozess gelesen wird, der unter dem SYSTEM-Konto ausgeführt wird, müssen Sie die folgenden Berechtigungen festlegen:

Administrators:F
SYSTEM:F
CREATOR OWNER:F 
ProcessAccount: R

Dies unterstützt die Sicherheit der Daten auf folgende Weise:

  • Die ACL-Berechtigungen erfordern, dass die Identität, die auf die Daten zugreift, Administrator ist.

  • Angreifer müssen Code auf dem Server ausführen (CryptUnprotectData), um die Anmeldeinformationen für das Konto wiederherzustellen.

Standardkonfiguration

Das folgende processModel-Standardelement wird nicht explizit in der Datei Machine.config oder der Stammdatei Web.config konfiguriert. Es ist jedoch die Standardkonfiguration, die von der Anwendung zurückgegeben wird.

<processModel 
   enable="true" 
   timeout="Infinite" 
   idleTimeout="Infinite" 
   shutdownTimeout="00:00:05" 
   requestLimit="Infinite" 
   requestQueueLimit="5000" 
   restartQueueLimit="10" 
   memoryLimit="60" 
   webGarden="false" 
   cpuMask="0xffffffff" 
   userName="machine" 
   password="AutoGenerate" 
   logLevel="Errors" 
   clientConnectedCheck="00:00:05" 
   comAuthenticationLevel="Connect" 
   comImpersonationLevel="Impersonate" 
   responseDeadlockInterval="00:03:00" 
   responseRestartDeadlockInterval="00:03:00" 
   autoConfig="true" 
   maxWorkerThreads="20" 
   maxIoThreads="20" 
   minWorkerThreads="1" 
   minIoThreads="1" 
   serverErrorMessageFile="" 
   pingFrequency="Infinite" 
   pingTimeout="Infinite" 
   asyncOption="20" 
   maxAppDomains="2000" 
/>

Das folgende processModel-Standardelement wird in der Datei Machine.config in .NET Framework, Version  1.0 und 1.1, konfiguriert.

<processModel
   enable="true"
   timeout="Infinite"
   idleTimeout="Infinite"
   shutdownTimeout="0:00:05" 
   requestLimit="Infinite" 
   requestQueueLimit="5000" 
   restartQueueLimit="10"
   memoryLimit="60" 
   webGarden="false"
   cpuMask="0xffffffff"
   userName="machine"
   password="AutoGenerate"
   logLevel="Errors"
   clientConnectedCheck="0:00:05"
   comAuthenticationLevel="Connect"
   comImpersonationLevel="Impersonate"
   responseRestartDeadlockInterval="00:09:00"
   responseDeadlockInterval="00:03:00" 
   <!-- In the .NET Framework version 1.1, the next two attributes are
        set to 20. -->
   maxWorkerThreads="25"
   maxIoThreads="25"
        />

Elementinformationen

Konfigurationsabschnittshandler

ProcessModelSection

Konfigurationsmember

ProcessModel

Konfigurierbare Speicherorte

Machine.config

Anforderungen

Microsoft Internetinformationsdienste (IIS), Version 5.0, 5.1 oder 6.0

.NET Framework, Version 1.0, 1.1 oder 2.0

Microsoft Visual Studio 2003 oder Visual Studio 2005

Siehe auch

Aufgaben

How to: Configure Specific Folders Using Location Settings

How to: Lock ASP.NET Configuration Settings

Referenz

system.web-Element (ASP.NET-Einstellungsschema)

configuration-Element (allgemeines Einstellungsschema)

System.Configuration

System.Web.Configuration

ProcessModel

ProcessModelSection

Konzepte

Configuring ASP.NET Process Identity

ASP.NET Configuration File Hierarchy

Securing Configuration

Configuration Inheritance

Weitere Ressourcen

Allgemeine Konfigurationseinstellungen (ASP.NET)

Verbessern der ASP.NET-Leistung

ASP.NET-Konfigurationseinstellungen

Configuring ASP.NET Applications

ASP.NET Configuration Files

ASP.NET Configuration API